티스토리 뷰

Algorithm/BOJ

1174 줄어드는 숫자

henry1214 2018. 9. 20. 22:13

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



1038 감소하는 수와 같은 문제이다. 이번에는 비트마스크를 이용해서 모든 경우를 저장해서 답을 찾는다.



1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#include <cstdio>
#include <vector>
#include <algorithm>
typedef long long ll;
using namespace std;
 
int n;
vector<ll> v;
 
int main()
{
    for(int i=1;i<(1<<10);i++)
    {
        ll num=0;
        for(int j=9;j>=0;j--)
            if(i&(1<<j))
                num=num*10+j;
        v.push_back(num);
    }
    sort(v.begin(),v.end());
    scanf("%d",&n); n--;
    printf("%lld\n",n>=v.size()?-1:v[n]);
    return 0;
}
cs


'Algorithm > BOJ' 카테고리의 다른 글

12015 가장 긴 증가하는 부분 수열 2  (0) 2018.11.14
5639 이진 검색 트리  (0) 2018.11.13
1038 감소하는 수  (0) 2018.09.20
15971 두 로봇  (0) 2018.09.16
11723 집합  (0) 2018.09.13
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday