목록Algorithm (111)
S E P H ' S

풀이방법 입력받은 문자열에서 가장 많이 입력된 알파벳을 출력하는 문제이다. 풀이법은 다음과 같다. 1. 알파벳 갯수 만큼의 1차원 배열 2개를 만든다. (가장 많이 입력된 알파벳이 여러개일 때를 비교해야 하므로 정렬시킬 배열, 알파벳을 셀 배열) 2. 정렬된 배열에서 마지막 인덱스의 값과 이전의 인덱스의 값이 같으면 '?'를 출력 3. 가장 많이 입력된 알파벳의 인덱스를 변수로 받고 출력 package BJ_문자열; import java.io.BufferedReader; import java.io.InputStreamReader; import java.util.Arrays; public class BJ_1157_단어공부 { public static void main(String[] args) throws..

문제 1110.더하기 사이클 0보다 크거나 같고, 99보다 작거나 같은 정수가 주어질 때 다음과 같은 연산을 할 수 있다. 먼저 주어진 수가 10보다 작다면 앞에 0을 붙여 두 자리 수로 만들고, 각 자리의 숫자를 더한다. 그 다음, 주어진 수의 가장 오른쪽 수와 앞에서 구한 합의 가장 오른쪽 자리 수를 이어 붙이면 새로운 수를 만들 수 있다. 다음 예를 보자. 26 부터 시작한다. 2+6=8이다. 새로운 수는 68이다. 6+8=14이다. 새로운 수는 84이다. 8+4=12이다. 새로운 수는 42이다. 4+2=6이다. 새로운 수는 26이다. 위의 예는 4번만에 원래 수로 돌아올 수 있다. 따라서 26의 사이클의 길이는 4이다. N이 주어졌을 때, N의 사이클 길이를 구하는 프로그램을 작성하시오. 입력 조..

문제 10871. X보다 작은 수 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 문제의 입력조건은 1. 첫째 줄에 N과 X가 주어진다. 2. 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수. 출력조건은 1. X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력하고, X보다 작은 수는 적어도 하나 존재. 예를 들어서 N = 10, X = 5 이면 정수 N개로 이루어진 수열 A에서 X보다 작은 숫자를 출력하라는 문제이다. 코드는 다음과 같다. N, X = map(int, input().split()) A = list(map(int, input().s..

문제 2884. 알람시계 풀이과정 출력해야 하는 결과에 대해서 3가지 경우의 수가 있다. 그대로 45분을 빼는 경우(ex: 13:50), 45분보다 입력한 분이 작을 경우 (ex: 13:30), 입력한 시간보다 알람 시간이 하루 차이가 날 경우 (ex: 0: 10)가 있다. H, M = list(map(int, input().split())) if M < 45: M += 60 H -= 1 if H < 0: H = 23 print(H, M-45) 코드에서 M이 45보다 작은 경우는 60을 더한 뒤, 45를 뺀 것을 출력하면 된다 H는 1을 빼면 된다. 하루 차이가 나는 경우에는 H가 0보다 작아질 경우 23을 출력하면 된다.