이번 문제는 줄을 찾고 몇번째에 있는지 확인하는 문제였다.
규칙성
1. 각 라인의 분자, 분모의 합은 동일하다.
2. 홀수 라인은 우상향하며 짝수 라인은 좌하향한다.
이 두가지를 지켜서 코드를 짜면 되는 문제였다.
visual studio에서 작업하여 scanf 가 scanf_s로 바뀐 것만 바꿔주면 정답 코드이다.
#include <stdio.h>
#include <stdlib.h>
int main()
{
int x;
int line = 1;
scanf_s("%d", &x);
int i = 1;
while (x - i > 0) { // line 수, 몇 번재인지 구하기
x -= i;
i += 1;
line += 1;
}
if (line % 2 == 0) { // 짝수는 좌하향, 홀수는 우상향
printf("%d/%d", x, line + 1 - x);
}
else {
printf("%d/%d", line + 1 - x, x);
}
return 0;
}
'백준' 카테고리의 다른 글
[백준] 10757 큰수 A+B (1) | 2025.01.24 |
---|---|
[백준] 2869번 달팽이는 올라가고 싶다 (2) | 2025.01.24 |
백준 11005 python 풀이 (0) | 2024.09.19 |
백준 2563 python (0) | 2024.09.10 |
백준 2738 [python/c++] 풀이 (0) | 2024.07.21 |