1193
#include <stdio.h>
int main(void){
// 번호 입력
int num;
scanf("%d", &num);
// 분수 찾기
int i = 1, j = 1, is_down = -1, is_unused_one = 1;
for(int k = 1; k < num; k++){
// 만약 1이 사용하지 않은 1일 경우
if(is_unused_one){
// 해당 1을 사용했음으로 바꾸고
is_unused_one = 0;
// 만약 i가 1일 경우
// j++ 후 왼쪽 아래로 내려간다로 바꾸고 continue;
if(i == 1){
is_down = 1;
j++;
continue;
}
// 만약 j가 1인 경우
// i++ 후 오른쪽 위로 올라간다로 바꾸고 continue;
else if(j == 1){
is_down = 0;
i++;
continue;
}
}
// 왼쪽 아래로 내려간다면
// i++, j--;
if(is_down){
i++;
j--;
}
// 오른쪽 위로 내려간다면
// i--, j++;
else{
i--;
j++;
}
// 1이 사용되지 않았음을 표시
is_unused_one = 1;
}
// 출력
printf("%d/%d", i, j);
return 0;
}

'백준' 카테고리의 다른 글
| [ 백준 / C ] 1015번 : 수열 정렬 (0) | 2025.10.02 |
|---|---|
| [ 백준 / C ] 29751번 : 삼각형 (0) | 2025.09.30 |
| [ 백준 / C ] 10804번 : 카드 역배치 (0) | 2025.09.26 |
| [ 백준 / C ] 5698번 : Tautogram (0) | 2025.09.25 |
| [ 배열 / C ] 1343번 : 폴리오미노 (0) | 2025.09.24 |