Notice
Recent Posts
Recent Comments
Link
반응형
공부혜옹
백준 15666 N과 M (12) 본문
https://hae-ong.tistory.com/89?category=883090
15663을 풀었다면 더할나위없이 쉬운 문제이다.
15663을 포스팅할 당시 '중복선택이 안되는 부분은 visited라는 배열로 체크해주었다' 라고했는데 이번 문제는 중복선택이 되고, 중복수열만 제한하면 되는 문제였기 때문에 visited로 검사하는 조건을 삭제했다.
#include <iostream>
#include <algorithm>
#include <set>
#include <vector>
using namespace std;
int n, m;
int arr[9];
int ans[9];
int visited[9];
void func(int index,int cnt){
if(cnt == m) {
for(int i=0; i<m; i++){
cout << ans[i] << " ";
}
cout << endl;
return;
}
int prev =0;
for(int i = index; i < n;i++){
if(prev != arr[i]){
ans[cnt] = arr[i];
prev = ans[cnt];
func(i,cnt+1);
}
}
}
int main(void){
ios_base::sync_with_stdio(0);
cin.tie(0);
cin >> n >> m;
for(int i=0; i<n; i++) {
cin >> arr[i];
}
sort(arr,arr+n);
func(0,0);
return 0;
}
반응형
'공부합시다 > Algorithm' 카테고리의 다른 글
프로그래머스 징검다리 건너기(feat.속도개선기) (0) | 2022.12.30 |
---|---|
백준 15663 N과 M (9) (0) | 2021.11.16 |
백준 15657 N과 M (8) (0) | 2021.11.16 |
백준 13915 현수의 열기구 교실 (0) | 2021.11.01 |
백준 18119 단어암기 (0) | 2021.10.31 |
Comments