File tree 1 file changed +9
-9
lines changed
1 file changed +9
-9
lines changed Original file line number Diff line number Diff line change 1
1
// Authored by : BaaaaaaaaaaarkingDog
2
- // Co-authored by : -
3
- // http://boj.kr/2a245058ecd74055bf168363740139a4
2
+ // Co-authored by : Kim-AYoung
3
+ // http://boj.kr/8b2349aeb550430a9cc40497eaaded05
4
4
#include < bits/stdc++.h>
5
5
using namespace std ;
6
6
7
7
int n, m;
8
8
int arr[10 ];
9
- bool isused[10 ];
10
9
11
10
void func (int k){ // 현재 k개까지 수를 택했음.
12
11
if (k == m){ // m개를 모두 택했으면
@@ -18,12 +17,8 @@ void func(int k){ // 현재 k개까지 수를 택했음.
18
17
int st = 1 ; // 시작지점, k = 0일 때에는 st = 1
19
18
if (k != 0 ) st = arr[k-1 ] + 1 ; // k != 0일 경우 st = arr[k-1]+1
20
19
for (int i = st; i <= n; i++){
21
- if (!isused[i]){ // 아직 i가 사용되지 않았으면
22
- arr[k] = i; // k번째 수를 i로 정함
23
- isused[i] = 1 ; // i를 사용되었다고 표시
24
- func (k+1 ); // 다음 수를 정하러 한 단계 더 들어감
25
- isused[i] = 0 ; // k번째 수를 i로 정한 모든 경우에 대해 다 확인했으니 i를 이제 사용되지않았다고 명시함.
26
- }
20
+ arr[k] = i; // k번째 수를 i로 정함
21
+ func (k+1 ); // 다음 수를 정하러 한 단계 더 들어감
27
22
}
28
23
}
29
24
@@ -33,3 +28,8 @@ int main(void){
33
28
cin >> n >> m;
34
29
func (0 );
35
30
}
31
+
32
+ /*
33
+ 어차피 그 전에 사용된 수의 다음부터 for문을 돌기 때문에
34
+ isused가 필요하지 않다.
35
+ */
You can’t perform that action at this time.
0 commit comments