728x90
https://www.acmicpc.net/problem/23292
풀이
처음에 입력받은 날이랑 나중에 입력받은 n개랑 비교해서 가장 가까운 리듬을 가진 날짜를 출력하면 됩니다.
소스코드
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
String d = br.readLine();
int max = 0;
int n = Integer.parseInt(br.readLine());
String answer = "";
while(n --> 0) {
String date = br.readLine();
int a = 0, b = 0, c = 0;
for(int i = 0; i < 4; i++) {
a += mul(d.charAt(i) - date.charAt(i));
}
for(int i = 4; i < 6; i++) {
b += mul(d.charAt(i) - date.charAt(i));
}
for(int i = 6; i < 8; i++) {
c += mul(d.charAt(i) - date.charAt(i));
}
int sum = a * b * c;
if(sum > max) {
max = sum;
answer = date;
}
else if(sum == max) {
if(answer.compareTo(date) > 0) {
answer = date;
}
}
}
System.out.print(answer);
}
public static int mul(int num) {
return (int) Math.pow(num, 2);
}
}
728x90
'백준 > 20001 - 25000' 카테고리의 다른 글
[백준] 21318번 : 피아노 체조 (0) | 2024.11.07 |
---|---|
[백준] 23335번 : Aliquot Sum(JAVA) (0) | 2021.10.31 |
[백준] 23334번 : Olympic Ranking(JAVA) (0) | 2021.10.30 |
[백준] 23336번 : A Sorting Problem(JAVA) (0) | 2021.10.30 |
[백준] 23343번 : JavaScript(JAVA) (0) | 2021.10.30 |
댓글