문제
그냥 결국 정렬만하면된다.
쉽게 풀려면 입력받은 값을 미리 정렬하고
정렬된 값의 역순으로 a스택에 있는 값을 rotate 해서 맨위에 거꾸로 하나씩올린뒤
push 명령으로 b 스택에 넣어두고 b에 있는것들을 전부 push해서 a에 다시 쌓으면 정렬된다.
하지만 이렇게 풀면 복잡도가 늘어나 점수가 낮게 채점되기 때문에 방법을 바꿔야한다.
스택 a, b와 몇개의 명령어를 이용해서 a를 정렬된 상태로 둬야하는데
./exec 1 2 3 4 5 입력 값이 들어오면 이것은 정렬된 상태로 보고,
스택에는 맨 위부터 1 2 3 4 5 가 쌓이게 된다. (입력값 앞부분부터 push로 쌓이는게 아니라 그냥 연결리스트로 쭉 연결해둔느낌)
허용함수
- write
- read
- malloc
- free
- exit
입력
스플릿으로 인자를 잘라서 받아야함
1 2 3 "4" 5
1 2 " 3 4 " 5
둘다 같은 입력값임
1 " " 2 3
1 one 2 3
1 "2two" 3
- int 범위 초과
- 중복 (하나하나 입력받을때마다 전체 돌아서 중복인지 확인하면 가장빠를듯)
- 숫자 아님
위 세개의 경우가 에러 발생😘
'42 Seoul' 카테고리의 다른 글
born2beroot 와 가상머신과 리눅스 2 실습 (0) | 2021.10.25 |
---|---|
so_long (0) | 2021.09.14 |
미니톡 - signal.h (0) | 2021.08.21 |
정리 안하려했는데 정리하는 exam02 (0) | 2021.07.05 |
born2beroot 와 가상머신과 리눅스 1 이론 (0) | 2021.06.28 |