๋ณธ๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
Algorithm

[๋ฐฑ์ค€] 4641๋ฒˆ: Doubles(์™„์ „ ํƒ์ƒ‰)

by ์ฃผ๋ฐœ2 2020. 2. 29.
๋ฐ˜์‘ํ˜•

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

 

4641๋ฒˆ: Doubles

๋ฌธ์ œ 2~15๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ž์—ฐ์ˆ˜๋กœ ์ด๋ฃจ์–ด์ง„ ๋ฆฌ์ŠคํŠธ๊ฐ€ ์žˆ์„ ๋•Œ, ์ด๋“ค ์ค‘ ๋ฆฌ์ŠคํŠธ ์•ˆ์— ์ž์‹ ์˜ ์ •ํ™•ํžˆ 2๋ฐฐ์ธ ์ˆ˜๊ฐ€ ์žˆ๋Š” ์ˆ˜์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ตฌํ•˜์—ฌ๋ผ. ์˜ˆ๋ฅผ ๋“ค์–ด, ๋ฆฌ์ŠคํŠธ๊ฐ€ "1 4 3 2 9 7 18 22"๋ผ๋ฉด 2๊ฐ€ 1์˜ 2๋ฐฐ, 4๊ฐ€ 2์˜ 2๋ฐฐ, 18์ด 9์˜ 2๋ฐฐ์ด๋ฏ€๋กœ ๋‹ต์€ 3์ด๋‹ค. ์ž…๋ ฅ ์ž…๋ ฅ์€ ์—ฌ๋Ÿฌ ๊ฐœ์˜ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋กœ ์ฃผ์–ด์ ธ ์žˆ์œผ๋ฉฐ, ์ž…๋ ฅ์˜ ๋์—๋Š” -1์ด ํ•˜๋‚˜ ์ฃผ์–ด์ง„๋‹ค. ๊ฐ ํ…Œ์ŠคํŠธ ์ผ€์ด์Šค๋Š” ํ•œ ์ค„๋กœ ์ด๋ฃจ์–ด์ ธ ์žˆ์œผ๋ฉฐ, 2~15๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ์ž์—ฐ์ˆ˜๊ฐ€ ์ฃผ์–ด์ง„๋‹ค.

www.acmicpc.net

์ฝ”๋“œ

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.Arrays;
import java.util.Scanner;

public class Main {

	public static void main(String[] args) throws IOException {
		BufferedReader bf = new BufferedReader(new InputStreamReader(System.in));

		while(true) {
			int count = 0;
			// ํ•œ ์ค„ ์ž…๋ ฅ๋ฐ›๊ณ  ๊ณต๋ฐฑ์„ ๊ธฐ์ค€์œผ๋กœ ์ž˜๋ผ์„œ String ๋ฐฐ์—ด์— ์ €์žฅ
			String[] sArr = bf.readLine().split(" ");
			
			// ํƒˆ์ถœ์กฐ๊ฑด -> -1 ์ž…๋ ฅ๋ฐ›์„๊ฒฝ์šฐ: ๋ฐฐ์—ด๊ธธ์ด 1
			if(sArr.length == 1)
				break;
			
			// 0๋„ ์ €์žฅ๋˜๋ฏ€๋กœ -1๋งŒํผ ์ง€์ •.
			int[] arr = new int[sArr.length - 1];
			for(int i=0; i<arr.length; i++)
				arr[i] = Integer.parseInt(sArr[i]);
			
			// ๋ฐฐ์—ด ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
			Arrays.sort(arr);
			
                        // ์ž์‹ ์˜ 2๋ฐฐ์ธ ์ˆ˜ ์ฐพ๊ธฐ => ์žˆ๊ฑฐ๋‚˜ ์—†๊ฑฐ๋‚˜์ด๋ฏ€๋กœ, ์ฐพ์œผ๋ฉด ๋ฐ”๋กœ ํƒˆ์ถœ
			for(int i=0; i<arr.length-1; i++) {
				for(int j=i+1; j<arr.length; j++) {
					if((arr[i]*2) == arr[j]) {
						count ++;
						break;
					}
				}
			}
			System.out.println(count);
		}
		
		bf.close();
	}
}

ํ’€์ด

๋”ฐ๋กœ ์ธํ’‹๋ฐ›๋Š” ๋ฒ”์œ„๊ฐ€ ์—†์–ด์„œ ์ƒ๊ฐ์ข€ ํ–ˆ๋‹ค.

๊ทธ ์™ธ ์ฃผ์„์— ์„ค๋ช…,,

๋ฐ˜์‘ํ˜•

๋Œ“๊ธ€