티스토리 뷰
Problem 0032 - Log
Run Stop Step Reset Submit
mao.snuke.org
처음 생각은, o -> 0, 00 -> 1, 11 -> 2, ... 를 연쇄적으로 적용시키는 것이었다. 이렇게 연쇄적으로 적용시킨 다음에 남은 부스러기들을 지우면 해결이 된다고 봄. 그 생각을 충실히 옮겨서 20줄로 해결했다.
o:0
00:1
11:2
22:3
33:4
44:5
#0:0_
#1:1_
#2:2_
#3:3_
#4:4_
#5:5_
_0:_
_1:_
_2:_
_3:_
_4:_
_5:_
_::
:#
근데 생각을 해보니, 00:1, 11:2 이렇게 합칠 필요가 없이 필요한 o 개수를 직접 나열하면 수 + o 의 조합으로 환원되게 만들 수 있었다. 이렇게 바꿔서 아래와 같이 12줄로 줄였다.
#o:0
0o:1
1oo:2
2oooo:3
3oooooooo:4
4oooooooooooooooo:5
#1o:#1
#2o:#2
#3o:#3
#4o:#4
#::
:#
여기서 # 커서가 하는 역할이 딱히 없어서, # 커서를 지우고 10줄로 줄였다.
0o:1
1oo:2
2oooo:3
3oooooooo:4
4oooooooooooooooo:5
1o:1
2o:2
3o:3
4o:4
o:0
저 뒤에 남은 부분을 지우는 것 때문에 여러 라인이 소모가 되는데, "내 뒤를 지워라"를 나타내는 커서를 추가하는 방식을 통해 8줄까지 줄일 수 있다.
0.o:1.
1.oo:2.
2.oooo:3.
3.oooooooo:4.
4.oooooooooooooooo:5.
.o:.
.::
o:0.
'MAO' 카테고리의 다른 글
0025. Balanced (0) | 2020.05.28 |
---|---|
0010. Increment (0) | 2020.05.27 |
Markov Algorithm Online (0) | 2020.05.27 |