사용자 도구

사이트 도구


ps:problems:boj:23357

Gets and Puts (Hard)

ps
링크acmicpc.net/…
출처BOJ
문제 번호23357
문제명Gets and Puts (Hard)
레벨플래티넘 2
분류

애드혹

사용한 언어Text
제출기록0ms
최고기록0ms
해결날짜2022/03/18

풀이

  • 발상:★★, 구현:★★★
  • 큐를 기반으로 하도록 만들어진 Quack 언어로 프로그램을 짜는 문제이다. IPSC에서는 처음 Quack 언어를 만들어서 관련 문제를 내고서는, 재미있다고 느꼈는지 다음해와 다다음해에도 계속 Quack언어를 사용하는 문제를 제시했다.
  • 처음 문제를 보고 막막했던것에 비하면, 하나씩 따져가면서 필요한 것을 생각하자 방향은 쉽게 잡혔다. 큐에 담긴 내용을 모두 출력하는 로직이 필요하고, 그러면 처음에는 이 부분의 로직을 숫자로 바꾼 부분을 큐에 넣어워야 한다. 그러면 또다시 이 숫자들을 출력하는 부분도 필요하니까 대충 코드 형태는 다음처럼 된다.
[part1 부분을 ascii 값으로 나타낸 부분]]
[part2 부분을 ascii 값으로 나타낸 부분]]
[part1 - 큐에 담긴 값들을 숫자로 출력하는 부분]]
[part2 - 큐에 담긴 값들을 문자로 출력하는 부분]]
  • 대충 part1과 part2번을 간단히 짜고, 아스키코드값으로 변환해서 앞에 붙이는 식으로 구현했다.
  • 문제에서 화이트 스페이스가 약간 차이나는 것은 무시한다고 되어있는데, 이 말은 화이트스페이스를 아예 안붙여도 된다는 말이 아니다.. 맨 위에서 ascii 값을 붙일때 줄바꿈 문자도 함께 적어줘야 통과된다.

코드

58
120
10
62
97
10
80
97
10
60
97
10
90
97
121
10
74
120
10
58
121
10
62
97
10
90
97
122
10
67
97
10
60
97
10
74
121
10
58
122
10
81
10
0
:x
>a
Pa
<a
Zay
Jx
:y
>a
Zaz
Ca
<a
Jy
:z
Q

토론

댓글을 입력하세요:
I P Z P O
 
ps/problems/boj/23357.txt · 마지막으로 수정됨: 2022/03/18 16:45 저자 teferi