본문 바로가기
반응형

C#/C# : Baekjoon48

[백준] C# : 최소, 최대 (10818번) 백준 단계별로 풀어보기 5단계 1차원배열 1번문제 10818번: 최소, 최대 첫째 줄에 정수의 개수 N (1 ≤ N ≤ 1,000,000)이 주어진다. 둘째 줄에는 N개의 정수를 공백으로 구분해서 주어진다. 모든 정수는 -1,000,000보다 크거나 같고, 1,000,000보다 작거나 같은 정수이다. www.acmicpc.net 문제의 핵심 1. 배열을 사용하고 정렬할 수 있는가? 입력된 숫자들 중에서 최소, 최대 숫자를 찾는 문제이다. 푸는 방법은 다양하게 존재하지만, 입력된 숫자들을 배열에 저장했다가, 오름차순으로 정렬해서 인덱스 번호 맨 처음과 끝을 출력하면 아주 간단하게 풀 수 있다. 배열의 정렬은 정말로 많이 쓰이고, 다양하고 복잡한 풀이에서 가장 기본적으로 사용되는 경우가 잦으므로 필수적으로 .. 2021. 7. 26.
[백준 - 그리디 알고리즘 ] C# : 세탁소 사장 동혁 (2720번) 백준 그리디 알고리즘 세탁소 사장 동혁 문제 2720번: 세탁소 사장 동혁 각 테스트케이스에 대해 필요한 쿼터의 개수, 다임의 개수, 니켈의 개수, 페니의 개수를 공백으로 구분하여 출력한다. www.acmicpc.net 문제의 핵심 1. 그리디 알고리즘을 알고 있는가? 2. 단순하게 풀기 그리디 알고리즘 2번째 문제이다. 이전 문제와 큰 차이는 없으나 이번에는 코드를 압축해서 간단하게 적어보도록 하겠다. 이 문제도 if문을 사용해서 풀 수도 있지만, 이번엔 if문을 사용하지 않겠다. 거스름돈의 단위가 25, 10, 5, 1로 총 4가지가 있다. 거스름돈의 금액이 입력되면 큰 단위부터 나눠주고 그 즉시 발생한 몫을 int형으로 선언해준다. int quarter = money / 25; 이런식으로. 그러면 .. 2021. 7. 23.
[백준 - 그리디알고리즘] C# : 전자레인지 (10162번) 백준 그리디 알고리즘 전자레인지 문제 10162번: 전자레인지 3개의 시간조절용 버튼 A B C가 달린 전자레인지가 있다. 각 버튼마다 일정한 시간이 지정되어 있어 해당 버튼을 한번 누를 때마다 그 시간이 동작시간에 더해진다. 버튼 A, B, C에 지정된 시간은 www.acmicpc.net 문제의 핵심 1. 그리디 알고리즘을 이해하고 있는가? 해당 문제는 그리디 알고리즘 문제 중 가장 쉬운편에 속하는 문제이다. 그리디 알고리즘을 알고 있다면 손쉽게 풀 수 있다. A, B, C가 각각 5분, 1분, 10초를 증가시키는 버튼이다. 만약 입력된 T에 해당하는 시간을 맞출 수 없다면 -1을 출력해야하므로, T를 10으로 나눴을 때 나머지가 존재한다면 1의자리인 초단위가 있다는 뜻이므로 A, B, C 만으로는 시.. 2021. 7. 23.
[백준] C# : A+B - 5 (10952번) 백준 단계별로 풀어보기 4단계 while문 1번문제 10952번: A+B - 5 두 정수 A와 B를 입력받은 다음, A+B를 출력하는 프로그램을 작성하시오. www.acmicpc.net 문제의 핵심 1. while문을 사용할 줄 아는가? 2. 점프문을 사용할 줄 아는가? while문은 작은 실수한번으로도 무한루프에 빠지기 쉽지만, 잘만 다뤄준다면 굉장히 강력한 도구이다. while문에서는 탈출하기 위한 장치를 무조건 세팅해야한다. 보통 bool 변수를 활용하곤 하는데 이번 문제의 경우에는 점프문을 사용했다. c#에서 점프문은 5가지가 존재하는데, 그 중 break문을 통해서 while문을 손쉽게 탈출 할 수 있다. if문을 사용해서 변수 2개에 모두 0이 입력되었을 때, break로 while문을 빠져나.. 2021. 7. 23.
반응형