You will be fine

<Algorithm> 7. 6603번 로또

by BFine
반응형

1. 6603번 로또

  • 7 1 2 3 4 5 6 7 맨앞에는 숫자의 갯수를 알려주고 뒤에는 숫자들이 나온다

  • 이중에서 6개를 뽑아 나올 수 있는 경우의 수를 모두 구하는 문제 

  • 기본 Back Tracking 문제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
import java.io.BufferedReader;
import java.io.InputStreamReader;
 
public class Main {
    public static void main(String[] args) throws Exception {
       
     BufferedReader br=new BufferedReader(new InputStreamReader(System.in));
   
     while(true){
     
     String[] input= br.readLine().split(" ");
     
     int N=Integer.parseInt(input[0]);
     if(N==0)break;
     String array[]=new String[N];
     
     for(int i=0;i<N;i++){
         array[i]=input[i+1];
        }
       new Lotto(array);
       System.out.println();
     }
    }
   }
 
class Lotto{
    
    String [] array;
    String res="";
    
    public Lotto(String[] array) {
        super();
       this.array = array;
       
       for(int i=0;i<array.length;i++){
           res=array[i];
       check(array[i], 0,res);
       }
    }
    public void check(String nums,int count,String res){
       count++;
       if(count==6){
          System.out.println(res);
       }else{
           
          for(int i=0;i<array.length;i++){
              
           int input=Integer.parseInt(nums+"");
              
              if(input>=Integer.parseInt(array[i])){
                  continue;
              }else{
                  check(array[i],count,res+" "+array[i]);          
              }
          }
           
       }
        
    }
}
cs



링크 https://www.acmicpc.net/problem/6603

반응형

블로그의 정보

57개월 BackEnd

BFine

활동하기