-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathBoj1193.java
More file actions
37 lines (28 loc) · 1.02 KB
/
Boj1193.java
File metadata and controls
37 lines (28 loc) · 1.02 KB
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
31
32
33
34
35
36
37
import java.util.Scanner;
public class Boj1193 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int X = sc.nextInt();
int cross_count = 1, prev_count_sum = 0;
while (true) {
// 직전 대각선 누적합 + 해당 대각선 개수 이용한 범위 판별
if (X <= prev_count_sum + cross_count) {
if (cross_count % 2 == 1) { // 대각선의 개수가 홀수라면
// 분모가 큰 수부터 시작
// 분모는 대각선 개수 - (X 번째 - 직전 대각선까지의 누적합 - 1)
// 분자는 X 번째 - 직전 대각선까지의 누적합
System.out.print((cross_count - (X - prev_count_sum - 1)) + "/" + (X - prev_count_sum));
break;
}
else { // 대각선의 개수가 짝수라면
// 홀수일 때의 출력을 반대로
System.out.print((X - prev_count_sum) + "/" + (cross_count - (X - prev_count_sum - 1)));
break;
}
} else {
prev_count_sum += cross_count;
cross_count++;
}
}
}
}