[C++]백준1138번 한 줄로 서기
오늘은 백준1138번 한 줄로 서기 문제를 풀어보도록 하자.
문제가 잘 이해되지 않았지만 몇 번을 읽어보는 노력 끝에 결국 이해했다 ㅋㅋ..
책을 좀 읽어야 겠다..
문제는 다음과 같다.
[접근법]
1. 키가 1부터 정렬되어 있는 순으로 왼쪽에 자기보다 큰 사람이 몇 명 있는지 입력을 받는다.
2. 따라서 본인보다 키가 큰 사람을 지나치면서 자신의 자리를 찾아가면 된다.
[코드]
#include <iostream>
using namespace std;
int line[10];
int people, long_person;
int main() {
cin >> people;
for (int i = 1; i <= people; i++) {
cin >> long_person;
for (int j = 0; j < people; j++) {
if (long_person == 0 && line[j] == 0) {
line[j] = i;
break;
}
else if(line[j] != 0){
continue;
}
else {
long_person--;
}
}
}
for (int i = 0; i < people; i++) {
cout << line[i] << ' ';
}
}