728x90
반응형
2024.09.18기준 - 브론즈3
728x90
백준, BEAKJOON, BOJ, JAVA, 자바
풀이
이 문제는 단순하게 규칙을 찾아내 증가되는 도형의 횟수를 구하는 문제입니다.
1. 삼각형일 때만 따로 계산을 해주었습니다.
// 삼각형일떄
if (a == 3) {
add = 2;
while (b-- > 0) {
count += add;
add++; // 기본에 늘어난 횟수에서 +1만큼 더 늘어난다.
}
// 삼각형이 아닐때
}
- 삼각형일 때는 늘어나는 도형의 개수가 기존에 늘어났던 횟수에 +1이 더 해집니다.
2. 삼각형이 아닌 다각형일 때
// 삼각형이 아닐때
} else {
add = a - 1;
while (b-- > 0) {
count += add;
add += a - 2; // 기존에 늘어난 횟수에서 +(a - 2)만큼 더 늘어난다.
}
}
- 다각형일 때는 기존에 늘어난 도형의 개수보다 (a - 2)만큼 더 늘어납니다.
코드
package Main;
import java.io.*;
import java.util.*;
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));
StringTokenizer st = new StringTokenizer(br.readLine());
int a = Integer.parseInt(st.nextToken()); // 결정의 모양
int b = Integer.parseInt(st.nextToken()); // 온도
long count = 1;
long add = 0;
// 삼각형일떄
if (a == 3) {
add = 2;
while (b-- > 0) {
count += add;
add++; // 기본에 늘어난 횟수에서 +1만큼 더 늘어난다.
}
// 삼각형이 아닐때
} else {
add = a - 1;
while (b-- > 0) {
count += add;
add += a - 2; // 기존에 늘어난 횟수에서 +(a - 2)만큼 더 늘어난다.
}
}
bw.write(Long.toString(count));
bw.flush();
bw.close();
br.close();
}
}
728x90
반응형
'코딩테스트 일기 (BAEKJOON)' 카테고리의 다른 글
BEAKJOON / 백준 - JAVA 10914번 Veni, vidi, vici (0) | 2024.09.20 |
---|---|
BEAKJOON / 백준 - JAVA 25755번 거울반사 (0) | 2024.09.19 |
BEAKJOON / 백준 - JAVA 1043번 거짓말 (1) | 2024.09.17 |
BEAKJOON / 백준 - JAVA 2811번 상범이의 우울 (1) | 2024.09.16 |
BEAKJOON / 백준 - JAVA 17070번 파이프 옮기기 1 (0) | 2024.09.15 |