백준 24

[백준] 19583. 싸이버개강총회

https://www.acmicpc.net/problem/19583 19583번: 싸이버개강총회 첫번째 줄에는 개강총회를 시작한 시간 S, 개강총회를 끝낸 시간 E, 개강총회 스트리밍을 끝낸 시간 Q가 주어진다. (00:00 ≤ S < E < Q ≤ 23:59) 각 시간은 HH:MM의 형식으로 주어진다. 두번째 줄부터는 www.acmicpc.net 처음에는 H, M을 모두 나눠서 따로 if 문을 작성해 줬었는데 무슨 조건이 빠진 건지 계속 틀렸다고 나왔다. 근데 생각해보니 24시간으로 표시하니까 HH:MM 자체를 4자리 숫자로 만들어도 되는 거였다. 수많은 if문이 중첩되어 있던 이전의 코드보다 훨씬 깔끔하고 알아보기 쉬웠다. 작은 아이디어 하나로 깔끔한 코드를 짤 수 있다는 점에 매일 놀란다. impo..

알고리즘 2021.09.15

[백준] 21737. SMUPC 계산기

https://www.acmicpc.net/problem/21737 21737번: SMUPC 계산기 SMUPC를 기념하기 위해 ALGOS와 DSC Sookmyung에서는 SMUPC의 각 글자로 계산이 이루어지는 계산기를 만들었다. 가은이와 혜민이는 이 계산기와 같은 방식으로 작동하는 프로그램을 만들고자 한다. 가은 www.acmicpc.net isdigit()으로 검사했을 때 숫자일 때와 아닐 때를 먼저 나눠준다. 숫자일 경우, 연산자가 저장되어 있지 않으면 첫번째 피연산자이고 연산자가 저장되어 있다면 두번째 피연산자이다. 연산자 일 경우, 저장된 연산자로 계산을 먼저 해주고 현재 연산자는 일단 저장해둔다. (두 번째 피연산자를 알아야 해당 연산자를 사용할 수 있기 때문이다.) isC로 연산자로 C로 등..

알고리즘 2021.09.15

[백준] 9536. 여우는 어떻게 울지?

https://www.acmicpc.net/problem/9536 9536번: 여우는 어떻게 울지? 각 테스트케이스마다 여우의 울음소리를 한 줄씩, 녹음된 순서대로 출력한다. 여우의 울음소리가 녹음되어 있음이 보장된다. (알려진 것과는 달리, 여우는 모스 부호로 의사소통하지 않는다.) www.acmicpc.net isdigit()으로 검사했을 때 숫자일 때와 아닐 때를 먼저 나눠준다. 숫자일 경우, 연산자가 저장되어 있지 않으면 첫번째 피연산자이고 연산자가 저장되어 있다면 두번째 피연산자이다. 연산자 일 경우, 저장된 연산자로 계산을 먼저 해주고 현재 연산자는 일단 저장해둔다. (두 번째 피연산자를 알아야 해당 연산자를 사용할 수 있기 때문이다.) isC로 연산자로 C로 등장했는지 check를 해주고 출..

알고리즘 2021.09.14