Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
Tags
- BFS
- 그리디
- 자바 10866
- 10807 자바
- 코딩테스트
- 파이썬
- 백준 28278 자바
- 티움투어
- 백준 2346 자바
- 2164 자바
- 2798 자바
- 백준
- 자바 1003
- 데보션영 3기
- 자바 2346
- 28278 스택 2
- 자바
- 자바 2164
- 10810 자바
- 1764 자바
- IAM 사용자
- 1010 자바
- 2748 자바
- dfs
- 10813 자바
- 2346 풍선 터뜨리기
- IAM Identity Center
- 백준 10866 자바
- 백준 1764 자바
- 자바 28278
Archives
- Today
- Total
자두의 데브로그
[자바] 백준 1037번 약수 본문
https://www.acmicpc.net/problem/1037
오랜만에 코테 공부하려니까 몬가 새롭고,, 자소서보다 재밌고,, 신선하니,, 매일 풀어야겠다 ^^
이 문제는 진짜 약수(1과 본인을 제외하고 남은 약수들)를 가지고 원래의 수가 어떤 수였는지를 맞추는 문제였다.
먼저 Collections의 sort 함수를 사용해서 정렬을 하기 위해 ArrayList로 배열을 선언하고, 배열의 길이가 짝수라면 맨 앞과 맨 뒤의 원소를 곱해주고 만약 배열의 길이가 홀수라면 가운데의 원소를 제곱해서 답을 구하면 됐다.
여기서 주의해야할 점은 홀수일 때, 맨 앞의 원소로 하면 안되는 게 나는 25 같이 제곱수들 중 약수가 1과 본인 포함 3개만 있는 수들만 생각해냈지만 생각해보면 모든 제곱수의 약수 개수가 3개일리는 없다. 그래서 처음에 get(0)을 제곱해서 틀렸었는데 가운데 원소로 하면 정답을 맞출 수 있다.
import java.io.*;
import java.util.ArrayList;
import java.util.Collections;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int n = Integer.parseInt(br.readLine());
int answer = 0;
StringTokenizer st = new StringTokenizer(br.readLine());
ArrayList<Integer> arr = new ArrayList<>();
for(int i = 0; i < n; i++){
arr.add(Integer.parseInt(st.nextToken()));
}
Collections.sort(arr);
if(arr.size() % 2 == 0){
// arr의 길이가 짝수라면 맨 뒤와 맨 앞을 곱하면 해당하는 수
answer = arr.get(0) * arr.get(arr.size()-1);
}
else{
answer = arr.get(arr.size()/2) * arr.get(arr.size()/2);
}
bw.write(String.valueOf(answer));
bw.flush();
bw.close();
}
}
'코딩테스트 > Java' 카테고리의 다른 글
[자바] 프로그래머스 신규 아이디 추천 (0) | 2024.09.27 |
---|---|
[자바] 백준 3460번 이진수 (0) | 2024.09.23 |
[자바] 프로그래머스 외계행성의 나이 (0) | 2024.08.30 |
[자바] 프로그래머스 체육복 (0) | 2024.08.29 |
[자바] 백준 1325번 효율적인 해킹 (0) | 2024.08.27 |