블로그 언저리인 무언가
[백준/BOJ] 1138 한 줄로 서기 본문
728x90
문제 : 1138 한 줄로 서기
사람의 수와 그 사람의 왼쪽에 있는 키가 큰사람의 수가 주어졌을 때
줄을 어떻게 세워야 하는지 출력하는 문제이다.
자신보다 키가 큰 사람이 왼쪽에 그 숫자만큼 위치하기 위해서는
최소한 그만큼의 빈 공간이 있어야 하는 것을 전제로
그리디 하게 접근하면 쉽게 풀 수 있다.
Code
#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll N, arr[10];
int main(){
ios::sync_with_stdio(0);
cin.tie(0);
cin >> N;
for (int i=1;i<=N;i++){
ll a, cnt=0;
cin >> a;
for (int j=0;j<N;j++){
if (arr[j]==0)
cnt++;
if (cnt==a+1){
arr[j]=i;
break;
}
}
}
for (int i=0;i<N;i++)
cout << arr[i] << " ";
return 0;
}
728x90
'Programming > BOJ' 카테고리의 다른 글
[백준/BOJ] 1080 행렬 (0) | 2020.11.29 |
---|---|
[백준/BOJ] 1074 Z (0) | 2020.11.29 |
[백준/BOJ] 18115 카드 놓기 (1) | 2020.11.20 |
[백준/BOJ] 2529 부등호 (0) | 2020.11.19 |
[백준/BOJ] 2758 로또 (0) | 2020.11.17 |
Comments