문제 링크
https://www.acmicpc.net/problem/1193
1193번: 분수찾기
첫째 줄에 X(1 ≤ X ≤ 10,000,000)가 주어진다.
www.acmicpc.net
나의 코드 (java)
import java.util.Scanner;
public class Main {
    public static void main (String[] args) {
        Scanner sc = new Scanner(System.in);
        // 입력값
        int n = sc.nextInt();
        // 누적 합을 계산할 변수
        int cal = 0;
        // 누적 합을 위한 변수
        int cnt = 0;
        // 누적 합이 입력값보다 커질 때까지 계산
        while (n > cal){
            cnt++;
            cal += cnt;
        }
        // 누적합(가장 큰 값) - 입력값
        int gap = cal - n;
        if (cnt % 2 == 0){
            // 짝수 라인일 때
            System.out.println((cnt-gap) + "/" + (gap+1));
        } else {
            // 홀수 라인일 때
            System.out.println((gap+1) + "/" + (cnt-gap));
        }
    }
}
이 문제는 라인이 짝수 라인인지 홀수 라인인지에 따라 값이 다르게 나옵니다.
'코딩공부 > 백준 (java)' 카테고리의 다른 글
| [백준 10926] ??! (java) (0) | 2022.02.14 | 
|---|---|
| [백준 2869] 달팽이는 올라가고 싶다 (java) (0) | 2021.07.27 | 
| [백준 2292] 벌집 (java) (0) | 2021.07.25 | 
| [백준 1712] 손익분기점 (java) (0) | 2021.07.25 | 
| [백준 1316] 그룹 단어 체커 (java) (0) | 2021.07.18 | 
댓글