ۼ : 24-03-27 13:20
화려한 화면보호기, 온라인 슬롯머신, 그리고 더 나은 사용자 경험
 ۾ : Judith
ȸ : 1,145  

4장 온라인슬롯머신 첫 번째 문제: 슬롯 머신Martha takes a jar of quarters to the casino with the intention of becoming rich. She plays three machines in turn. Unknown to her, the machines are entirely predictable. Each play costs one quarter. The first machine pays 30 quarters every 35^{th} time it is playedthe second machine pays 60 quart...dmoj.ca​첫 똥코드 제출한 결과:테스트 케이스 1, 4, 5 통과테스트 케이스 2, 3 오답​오타 등의 온라인슬롯머신 사소한 오류가 있었다면, 1, 4, 5 도 통과하지 못 했을 텐데...​버그 찾는데 시간이 약간 걸렸다.while 문 밖에 결과 출력을 두고while 문 안에 if 문과 함께 결과 출력을 또 둔 것이 문제였다. 그래서 케이스에 따라 출력이 한 번만 되면 통과, 두 번 되면 오답.​역시 while 문은 아직 익숙하지 않다. 교재 연습문제 외에 실제 문제 해결하면서 써본 적도 없는 것 같다. 많은 연습이 필요하다. 그래도 이 문제 덕분에 잘 배웠다. 온라인슬롯머신 좋은 경험.​아래 파일은 똥코드에 sys.exit() 코드만 추가해서 모든 테스트 케이스를 통과한 똥코드다.이 과정에서 sys.exit() 문도 배웠다. 지나가다 접한 적이 있을 텐데, 기억이 안 나 검색했고, 몇 번의 시행착오 끝에 제대로 썼다. ​import sys 를 하면서, 혹시 제한 시간을 초과하지 않을까 걱정했는데, 그렇지 않았다. 덕분에 import sys 는 시간 부담이 적다는 것도 배웠다.​또 한 가지 배웠다.DMOJ는 오답에 한해 내 코드의 실행결과 일부분을 알려준다.2, 3의 WA (Wrong Answer) 옆에만 토글 온라인슬롯머신 아이콘이 >모양으로 있다.토글하면 아래와 같이 내 코드의 실행결과를 보여준다.​이 사실을 알았더라면, 이를 참고하여 버그를 더 빠르게 찾을 수 있었을 것이다. 그런데 나는 혼자 버그를 찾아낸 다음에 이 사실을 알게 됐다. sys.exit() 을 몰라서 exit, exit(), exit(0) 등으로 시도해 보다, 채점 결과만 보고 무심코 넘겼던 토글 아이콘이 눈에 띄어 클릭해 본 것이다.​아 온라인 저지는 참으로 좋은 교육-학습 시스템이다!!앞으로는 100% AC(Accepted)가 아닐 때1) 채점표만 보고 디버깅그래도 안 되면2) 토글해서 실행결과 온라인슬롯머신 보고 디버깅그래도 안 되면3) 책이나 모범 답안 참고이런 과정을 거쳐야 겠다.그런데, 내 코드 실행결과를 자세히 보자.​Your output (clipped)Martha plays 29 times before going broke.Martha plays 29 times ​출력을 한 번만 해야 하는데, 두 번해서 틀렸다는 것을 짐작할 수 있다. 그런데, 두 번째 출력문이 이상하다. 분명히 같은 코드니 같은 문장이 나와야 하는데??즉, 아래와 같이 나와야 한다.​Martha plays 29 times before going broke.Martha plays 29 times before going broke.​그런데, 두 온라인슬롯머신 번째 문장은 잘려서 나왔다. 그러면, 독자는 이를 통해 Your output (clipped) 의 clipped 가 잘린, 발췌된 등의 의미라는 것을 추론할 수 있어야 한다. 이런 식으로 가설을 세운 뒤, 사전으로 검증을 해야 한다.​동사 clip을 보면 우리가 가장 많이 쓰는 클립과 연결된 의미가 1번이다. to fasten something. 그런데 2번에는 1번과 약간 상반된 to cut something 이 나온다. Your output (clipped) 는 2번 의미로 쓰인 것이다. ​Definition of clip verb from 온라인슬롯머신 the Oxford Advanced Learner's Dictionary clip verb /klɪp/ /klɪp/ Verb Forms Idioms Phrasal Verbs ​ [transitive, intransitive] to fasten something to something else with a clip to be fastened with a clip clip something + adv./prep. He clipped the microphone (on) to his ...clip 1​clip 2​그러고 보니 병원에서 용종 제거하는 의료 기구를 clipper 라고 부르던 것을 들은 적이 있는 것 같다.손톱깎이는 nail clippers 라고 한다.NBA 농구팀 중에 Clippers 온라인슬롯머신 라는 팀이 있는데, 그 팀도 이런 의미로 이름을 붙인 것 같다.​이 문제 하나 풀면서 많은 것을 배웠다.1) while 문 코딩시 주의 사항2) sys.exit()3) import sys 는 부담이 적다.4) 위 문제에 대한 더 깔끔한 코드5) DMOJ는 AC 외의 답변에 한해, 제출 코드의 실행 결과 일부를 보여 준다.6) clip 은 다소 상반된 2가지 의미로 널리 쓰인다.​​#Zingaro #진가로 #파이썬입문 #while #코딩테스트 #똥코드 #clip #clipped #오답확인 #importsys #sys쩜exit괄호 #가설설정 #dictionary검증​​