컴공댕이 공부일지

[c언어] 백준 (1193 분수찾기) 본문

PS/코딩 문제 풀이 모음

[c언어] 백준 (1193 분수찾기)

은솜솜솜 2023. 3. 20. 04:15
728x90

각 대각선 줄의 합이 동일한 것을 이용하고, 각 대각선에서 시작 인덱스가 1+(n까지의 합)인걸 이용해 풀었다.

i가 n이고, 지그재그로 방향이 위에서 아래, 아래에서 위로 두 가지로 나뉘므로 i가 홀수인 경우 짝수인 경우를 나눠서 최종 분수를 구했다. 그냥 이러쿵 저러쿵 숫자 넣고 생각 좀 해보면 풀리는 문제ㅇㅇ

 

 

1993 분수 찾기

실버 5

https://www.acmicpc.net/problem/1193

 

1193번: 분수찾기

첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다.

www.acmicpc.net

 

정답 코드

#include <stdio.h>

int main()
{
    int x=0;
    int sum=1;
    int a=1;
    int b=0;
    int i=0;
    
    scanf("%d", &x);
    

    while(sum<=x) {
        sum+=i;
        i++;
    }
    
    
    i--;
    sum-=i;
    i--;
        
    
    if(i%2==0) {
        a=i+1-(x-sum);
        b=i+2-a;
    } else {
        a+=(x-sum);
        b=(i+2)-a;
    }
    
    
    printf("%d/%d", a, b);

    return 0;
}

 

 

글로벌 탐방 면접 준비하느라 밀린 자바 이론 공부하다가 시간이 너무 늦어졌다... 스트릭 이을려고 실버 5 수학태그 문제 아무거나 골라서 풀었다ㅎㅅㅎ 새벽 4시에 풀어서 정성스레 풀이하기도 귀찮다 ㅎㅎ.. 뭐 별로 신박한 풀이가 있는 것도 아니고... 그냥 빨리 쓰고 빨리 자고싶다.. 

 

첨에 지그재그 아니고 무조건 위에서 아래인 줄 알고 틀렸다. 문제를 잘 읽쟈....

728x90
Comments