검색결과 리스트
전체 글에 해당되는 글 1768건
- 2023.02.23 프로그래머스 레벨2 뒤에 있는 큰 수 찾기 C#(JAVA) peek, pop, push
- 2023.02.20 백준 11720번 숫자의 합(JAVA, C#)
- 2023.02.20 백준 11654번 아스키코드 ASCII(JAVA, C#)
- 2023.02.20 백준 4673번 셀프 넘버(JAVA, C#)
- 2023.02.20 빅데이터 커리어
- 2023.02.18 백준 15596번 정수 N개의 합(JAVA) 함수
- 2023.02.18 백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}%
- 2023.02.18 백준 8958번 OX퀴즈(JAVA, C#) charAt(), array[].length()
글
프로그래머스 레벨2 뒤에 있는 큰 수 찾기 C#(JAVA) peek, pop, push
Stack을 이용하는 거다.
C#기준으로 stack은 LIFO 개념인데, Last In First Out이다. 마지막에 들어간 게 처음으로 나온다는 의미이다.
push는 스택에 값을 때려박는 거고 pop는 맨 위에 있는 값(마지막에 들어간 값)을 리턴하면서 그걸 삭제하는 개념인 듯하다.
peek는 가장 top에 위치한 값을 리턴하는데 pop이랑은 다르게 삭제하지는 않는 방식인 거 같다.
2중 for문을 방지하기 위해서 stack을 활용한다.
s.Peek < [i]
리셋하기 위해서 s.Pop도 쓴다.
C#
public class Solution {
public int[] solution(int[] numbers) {
int[] answer = new int[numbers.Length];
var s = new System.Collections.Generic.Stack<int>();
for (int i = 0; i < numbers.Length; i++)
{
answer[i] = -1;
while (s.Count > 0)
{
if (numbers[s.Peek()] < numbers[i])
{
answer[s.Peek()] = numbers[i];
s.Pop();
}
else
{
break;
}
}
s.Push(i);
}
return answer;
}
}
using System;
using System.Collections.Generic;
using System.Linq;
public class Solution {
public int[] solution(int[] numbers) {
int[] answer = new int[numbers.Length];
Stack<int> stack = new Stack<int>();
for(int i = numbers.Length-1 ; i>=0 ; i--)
{
if(stack.Count ==0)
{
answer[i]=-1;
stack.Push(numbers[i]);
continue;
}
while(stack.Count>0)
{
if(stack.Peek()>numbers[i])
{
answer[i]=stack.Peek();
stack.Push(numbers[i]);
break;
}
stack.Pop();
}
if(answer[i]==0)
{
answer[i]=-1;
stack.Push(numbers[i]);
}
}
return answer;
}
}
자바
import java.util.*;
class Solution {
public int[] solution(int[] numbers) {
Stack<Integer> stack = new Stack<>();
int[] ret = new int[numbers.length];
for(int i = 0;i<numbers.length;i++)
{
// 하강 직선일 때는 push
if(stack.isEmpty() || numbers[i]<numbers[i-1])
{
stack.push(i);
}
else
{
// 현재값보다 작은 index는 pop하여 현재값으로
while(!stack.isEmpty() && numbers[stack.peek()]<numbers[i])
{
ret[stack.pop()] = numbers[i];
}
stack.push(i);
}
}
// 나머지는 -1
while(!stack.isEmpty())
{
ret[stack.pop()] = -1;
}
return ret;
}
}
'프로그래밍' 카테고리의 다른 글
프로그래머스 레벨2 N-Queen C#(JAVA) - 완전탐색 private void/bool (0) | 2023.02.23 |
---|---|
프로그래머스 레벨2 주식가격 C#(JAVA) (0) | 2023.02.23 |
프로그래머스 레벨2 C# 연속 부분 수열 합의 개수(Hash.Count, HashSet, Skip, Take, JAVA) (0) | 2023.02.11 |
프로그래머스 C# 행렬의 곱셈(3중 for문, JAVA) (0) | 2023.02.11 |
프로그래머스 C# 예상 대진표(JAVA) (0) | 2023.02.11 |
글
백준 11720번 숫자의 합(JAVA, C#)
자바
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
int length = sc.nextInt();
int sum = 0;
String str = sc.next();
for(int i = 0;i<length;i++)
{
sum += int.Parse(str.charAt(i)-48);
}
System.out.println(sum);
}
}
///////////
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.IOException;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
br.readLine(); // N 은 쓸모가 없으므로 입력만 받는다.
int sum = 0;
for(byte value : br.readLine().getBytes()) {
sum += (value - '0'); // 또는 (a-48)
}
System.out.print(sum);
}
}
///////////////////////////////
C#
using System;
namespace Baekjoon {
class Program {
static void Main(string[] args) {
int length = int.Parse(Console.ReadLine());
int sum = 0;
string str = Console.ReadLine();
for(int i = 0;i<str.Length;i++)
{
sum += int.Parse(str[i].ToString());
}
Console.WriteLine(sum);
}
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 25314번 코딩은 체육과목 입니다 C#(JAVA) (0) | 2023.02.28 |
---|---|
백준 11382번 꼬마 정민 C#(JAVA) (0) | 2023.02.28 |
백준 11654번 아스키코드 ASCII(JAVA, C#) (0) | 2023.02.20 |
백준 4673번 셀프 넘버(JAVA, C#) (0) | 2023.02.20 |
백준 15596번 정수 N개의 합(JAVA) 함수 (0) | 2023.02.18 |
글
백준 11654번 아스키코드 ASCII(JAVA, C#)
자바
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner in = new Scanner(System.in);
int ch = in.next().charAt(0);
System.out.print(ch);
}
}
//////////////////////////
C#
using System;
namespace Baekjoon {
class Program {
static void Main(string[] args) {
char number = Convert.ToChar(Console.ReadLine());
int num = Convert.ToInt32(number);
Console.WriteLine(num);
}
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 11382번 꼬마 정민 C#(JAVA) (0) | 2023.02.28 |
---|---|
백준 11720번 숫자의 합(JAVA, C#) (0) | 2023.02.20 |
백준 4673번 셀프 넘버(JAVA, C#) (0) | 2023.02.20 |
백준 15596번 정수 N개의 합(JAVA) 함수 (0) | 2023.02.18 |
백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}% (0) | 2023.02.18 |
글
백준 4673번 셀프 넘버(JAVA, C#)
자바
import java.util.*;
public class Main{
public static void main(String args[]){
boolean [] a = new boolean[10001];
for(int i = 1;i<10001;i++)
{
int n = d(i);
if (n < 10001)
{ //10000보다 작은 수만
a[n] = true;
}
}
for(int i = 1;i<10001;i++)
{
if(a[i] == false)
{
System.out.println(i);
}
}
}
public static int d(int number){
int sum = number;
while (number != 0)
{
sum += number%10; // number의 첫째 자리수
number = number/10; //나누기로 첫째자리 수 제외
}
return sum; // int n이 된다
}
}
///////////////////////////
C#
using System;
using System.Collections.Generic;
using System.Linq;
internal class Program
{
private static void Main()
{
List<int> answer = new List<int>(Enumerable.Range(1,10000));
for(int i = 0;i<10000;i++)
{
answer.Remove(selfnum(i));
}
Console.WriteLine(string.Join("\n", answer));
}
private static int selfnum(int i)
{
i = i+1;
string str_i = i.ToString();
int num = i;
for(int j = 0;j<str_i.Length;j++)
{
num += int.Parse(str_i[j].ToString());
}
return num;
}
}
///////////////////
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
internal class Program
{
private static void Main()
{
StringBuilder result = new StringBuilder();
var integers = Enumerable.Range(1, 10000).ToList();
var notSelfNumbers = new Queue<int>();
foreach (var i in integers)
{
int sum = i;
foreach (var j in i.ToString())
{
sum += int.Parse(j.ToString());
/// 자릿수 더하기
}
notSelfNumbers.Enqueue(sum);
}
while (notSelfNumbers.Count != 0)
{
int n = notSelfNumbers.Dequeue();
// 셀프 넘버가 아닌 것을 삭제한다.
integers.Remove(n);
}
foreach (var item in integers)
{
result.AppendLine(item.ToString());
}
Console.WriteLine(result.ToString());
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 11720번 숫자의 합(JAVA, C#) (0) | 2023.02.20 |
---|---|
백준 11654번 아스키코드 ASCII(JAVA, C#) (0) | 2023.02.20 |
백준 15596번 정수 N개의 합(JAVA) 함수 (0) | 2023.02.18 |
백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}% (0) | 2023.02.18 |
백준 8958번 OX퀴즈(JAVA, C#) charAt(), array[].length() (0) | 2023.02.18 |
글
유튜브 펌
'공지 및 잡동사니' 카테고리의 다른 글
20억원에 인수한 신사임당 유튜브채널 근황 (0) | 2023.10.05 |
---|---|
주식 유머 - 세상에서 가장 스펙을 많이 보는 회사는? (0) | 2023.07.04 |
네이버 주식 종목토론방은 왜 차단 기능을 안만들지 (0) | 2021.04.04 |
2월 24일부터 해외 입국자 PCR 음성확인서 제출 의무화 (0) | 2021.02.28 |
안타깝지만 이 블로그에도 주식 글을 올려야겠다. (0) | 2021.02.19 |
글
백준 15596번 정수 N개의 합(JAVA) 함수
자바
class Test {
long sum(int[] a) {
long sum = 0;
for(int i = 0; i < a.length; i++)
{
sum += a[i];
}
return sum;
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 11654번 아스키코드 ASCII(JAVA, C#) (0) | 2023.02.20 |
---|---|
백준 4673번 셀프 넘버(JAVA, C#) (0) | 2023.02.20 |
백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}% (0) | 2023.02.18 |
백준 8958번 OX퀴즈(JAVA, C#) charAt(), array[].length() (0) | 2023.02.18 |
백준 1546번 평균(JAVA, C#) BufferedReader (0) | 2023.02.18 |
글
백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}%
자바
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
int length = sc.nextInt();
double sum = 0;
for(int i = 0;i<length;i++)
{
int stu = sc.nextInt();
int arr[] = new int[stu];
sum = 0;
int score = 0;
for(int j = 0; j<stu;j++)
{
score = sc.nextInt();
arr[j] = score;
sum += score;
}
double index = 0;
double avg = sum / stu;
for(int j = 0; j<stu;j++)
{
if(arr[j] > avg)
{
index++;
}
}
System.out.printf("%.3f%%\n", (index / stu) * 100);
index = 0;
}
sc.close();
}
}
//////////////////////
C#
using System;
namespace Baekjoon {
class Program {
static void Main(string[] args) {
int length = int.Parse(Console.ReadLine());
int sum = 0;
for(int i = 0;i<length;i++)
{
string[] stu = Console.ReadLine().Split();
for(int j = 1;j<int.Parse(stu[0])+1;j++)
{
sum += int.Parse(stu[j]);
}
double index = 0;
double avg = sum / int.Parse(stu[0]);
for(int j = 1; j < int.Parse(stu[0])+1;j++)
{
if(int.Parse(stu[j]) > avg)
{
index++;
}
}
Console.WriteLine($"{(index / int.Parse(stu[0])) * 100:F3}%");
sum = 0;
}
}
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 4673번 셀프 넘버(JAVA, C#) (0) | 2023.02.20 |
---|---|
백준 15596번 정수 N개의 합(JAVA) 함수 (0) | 2023.02.18 |
백준 8958번 OX퀴즈(JAVA, C#) charAt(), array[].length() (0) | 2023.02.18 |
백준 1546번 평균(JAVA, C#) BufferedReader (0) | 2023.02.18 |
백준 3052번 나머지(JAVA, C#) (0) | 2023.02.18 |
글
백준 8958번 OX퀴즈(JAVA, C#) charAt(), array[].length()
자바
import java.util.*;
public class Main{
public static void main(String args[]){
Scanner sc = new Scanner(System.in);
int length = sc.nextInt();
String arr[] = new String[length];
int sum = 0;
int score = 0;
for(int i = 0;i<length;i++)
{
arr[i] = sc.next();
}
for(int i = 0;i<length;i++)
{
for(int j = 0;j<arr[i].length();j++)
{
if(arr[i].charAt(j) == 'O')
{
score++;
sum += score;
}
else
{
score = 0;
}
}
System.out.println(sum);
sum = 0;
score = 0;
}
}
}
///////////////////////////
C#
using System;
namespace Baekjoon {
class Program {
static void Main(string[] args) {
int length = int.Parse(Console.ReadLine());
int sum = 0;
int score = 0;
for(int i = 0;i<length;i++)
{
string ox = Console.ReadLine();
for(int j = 0;j<ox.Length;j++)
{
if(ox[j] == 'O')
{
score++;
sum += score;
}
else
{
score = 0;
}
}
Console.WriteLine(sum);
sum = 0;
score = 0;
}
}
}
}
'백준 프로그래밍' 카테고리의 다른 글
백준 15596번 정수 N개의 합(JAVA) 함수 (0) | 2023.02.18 |
---|---|
백준 4344번 평균은 넘겠지(JAVA, C#) %.3f%%\n / 100:F3}% (0) | 2023.02.18 |
백준 1546번 평균(JAVA, C#) BufferedReader (0) | 2023.02.18 |
백준 3052번 나머지(JAVA, C#) (0) | 2023.02.18 |
백준 5597번 과제 안 내신 분(JAVA, C#) (0) | 2023.02.16 |