본문으로 바로가기

1193 - 분수찾기 java

category Algorithm by java 2019. 5. 12. 18:45

 

 

문제에 나와있는데로 지그재그로 적어보면  각 라인을 n으로 하는 등차수열에 성립한다.

등차수열을 이용하고 , 라인이 홀수일때는 분자가 n부터 시작하고 짝수이때는 분모가 n부터 시작한다.

import java.util.Scanner;

/*
 * 1/1 (1 번째 라인)
 * 1/2 , 2/1 ( 2번째 라인)
 * 3/1 , 2/2 , 1/3 (3번째 라인)
 * 1/4 , 2/3 , 3/2 , 4/1 (4번째 라인)
 * 5/1 , 4/2 , 3/3 , 2/4 , 1/5 (5번째 라인)
 */
public class Exam1193 {

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);
		int n = sc.nextInt();

		int line = 0;
		int count = 0;

		while (count < n) {
			line++;
			count = line * (line + 1) / 2; // 등차수열
		}

		if (line % 2 == 0) {
			int bunza = line - (count - n);
			int bunmo = 1 + (count - n);
			System.out.println(bunza + "/" + bunmo);

		} else {
			int bunza = 1 + (count - n);
			int bunmo = line - (count-n);
			System.out.println(bunza + "/" + bunmo);
		}

	}

}

'Algorithm by java' 카테고리의 다른 글

2231 - 분해합 java  (0) 2019.08.13
2839 - 설탕배달 java  (0) 2019.06.27
1929 - 소수구하기 (에라토스테네스의 체) java  (0) 2019.05.13
2775번 - 부녀회장이 될테야! java  (0) 2019.05.12
1475-방번호 java  (0) 2019.05.12