반응형
안녕하세요! Plitche(플리체)입니다.
이번 포스팅의 주제는 Q2028 : 삼각수 (자바, JAVA)입니다.
Intro
Question
문제 설명
입력
자연수 k가 입력된다. (k <= 555)
출력
약수의 개수가 처음으로 k개를 넘는 삼각수를 출력한다.
예시
- 입력 : 5
- 출력 : 28
Solution (풀이)
- 풀이 : 메모리 14188, 시간 : 66
public class Answer1 {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
int count = Integer.parseInt(br.readLine()); // 넘어야 하는 약수의 개수 입력 받기
int index=1; //
int number=0;
while(true) {
number += index;
int many = 0;
for (int i=1; i<=number; i++) {
if (number%i==0) {
if (i > (number/i)) break; // 나눈 몫이 본인보다 더 커지는 순간 break;
if ((number/i) == i) {
many += 1; // 동일 수의 제곱일 때는 +1
} else {
many += 2; // 서로 다른수의 곱 일때는 +2
}
}
}
if (count<many) {
System.out.println(number); // 입력받은 약수의 개수보다 많아질때 break;
break;
} else {
index++;
}
}
}
}
Ranking(순위)
반응형
'Algorithm > CodeUp' 카테고리의 다른 글
[CodeUp_Java] Q2026 : 16진수를 2진수로 변환하기 (2) | 2022.11.22 |
---|---|
[CodeUp_Java] Q2027 : 콘웨이의 1만 달러짜리 수열 (0) | 2022.11.22 |
[CodeUp_Java] Q2030 : 윈도우 화면 출력하기 (0) | 2022.11.21 |
[CodeUp_Java] Q2031 : 엑셀의 열 순서 2 (0) | 2022.11.21 |
[CodeUp_Java] Q1852 : 재귀로 1부터 n까지 한 줄로 출력하기 (0) | 2022.08.04 |