일상

3040 : 백설 공주와 일곱 난쟁이

STUDYING,,, 2021. 8. 12. 20:20
import java.util.Scanner;

public class Main {
	static int N = 9, R = 7;
	static int[] man = new int[N];
	static boolean[] result = new boolean[man.length];
	static int sum = 0;

	public static void main(String[] args) {

		Scanner sc = new Scanner(System.in);

		for (int i = 0; i < 9; i++) {
			man[i] = sc.nextInt();
		}
		subset(0, 0, 0);
	}

	private static void subset(int target, int cnt, int sum) {
		if (cnt == R) {

			if (sum == 100) {
				for (int i = 0; i < 9; i++) {
					if (result[i] == true) {
						System.out.println(man[i]+" ");
					}
				}
			}
			return;
		}

		if (target == N)
			return;

		result[target] = true;
		subset(target + 1, cnt + 1, sum + man[target]);
		result[target] = false;
		subset(target + 1, cnt, sum);
	}
}

'일상' 카테고리의 다른 글

2798 : 블랙잭  (0) 2021.08.13
15686 : 치킨 배달  (0) 2021.08.13
2164 : 카드2  (0) 2021.08.12
2161 : 카드1  (0) 2021.08.12
20001 : 고무오리 디버깅  (0) 2021.08.12