본문 바로가기
백준

[백준] 1193번 분수찾기 | C

by ris 2025. 1. 6.

 

이번 문제는 줄을 찾고 몇번째에 있는지 확인하는 문제였다.

규칙성

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