본문 바로가기

분류 전체보기165

[백준/Python] 25206번 너의 평점은 문제 ■ 25206번 너의 평점은 문제 ■ 코드 풀이 풀이 자체는 단순한 편입니다. 과목명은 필요 없는 값이니 무시하고, 학점과 등급만을 활용하여 계산하면 됩니다. 그런데 이 문제에서 이해가 안 되는 부분이 하나 있습니다. 아래 코드를 보시면 알겠지만, 저는 이 문제에 처음 접근할 때 list를 활용했습니다. 학점과 등급을 곱한 값을 list에 append 하고 최종 출력 시, 학점의 합과 나누는 방식이었습니다. 저는 정답이라고 생각했는데, 아무리 제출해도 계속 오답 판정을 받았습니다. 혹시나 하는 마음에 list를 사용하지 않고 다시 코드를 작성하여 제출했더니 정답으로 처리되더군요. 두 방식의 차이가 뭘까, 계속 생각해 봤는데 개인적으로는 summation 과정에서 미세한 소수점 차이가 원인이 아닌가 싶네요.. 2023. 3. 31.
[백준/Python] 1316번 그룹 단어 체커 문제 ■ 1316번 그룹 단어 체커 문제 ■ 코드 풀이 두 가지 풀이법을 공유드리겠습니다. 하나는 제가 풀었던 방식이고, 다른 하나는 조금 더 개선된 방식입니다. 소요 시간은 동일하지만, 코드 길이에서 차이가 있어서 실전에서는 개선 방식대로 푸는 것이 좋아 보입니다. 그러나 파이썬을 막 배우기 시작하신 분이시라면 스터디를 위해서 두 코드 모두 보시는 것을 추천드립니다. 먼저 첫 번째 코드입니다. 아이디어는 다음과 같습니다. 1) 입력받은 단어를 word라는 변수로 선언한다. 그리고 word를 list화한 word_list도 선언한다. 2) word에서 알파벳을 한 글자씩 꺼낸다. 꺼낸 알파벳을 활용하여 word_list에 해당 알파벳이 몇 번째 있는지 index를 구한다. index는 char_idx_list.. 2023. 3. 30.
[백준/Python] 2941번 크로아티아 알파벳 문제 ■ 2941번 크로아티아 알파벳 문제 ■ 코드 풀이 저는 복잡하게 문제를 접근했는데, 파이썬 고수분들은 replace 메서드를 활용하여 굉장히 쉽게 푸시더군요. 파이썬 문법에 대해 아직 배워야 할 것들이 많이 남은 것 같습니다. 여기서 핵심은 croatia_alphabets라는 list에서 하나씩 꺼내는데, 'dz=' 보다 'z='가 앞에 있으면 'dz='가 아니라 'z='로 바꿔서 오류가 나오므로 아래의 순서를 지키는 것이 중요합니다. replace 메서드 관련한 내용은 아래 잘 정리된 링크 첨부하니, 모르셨던 분들이라면 스터디 차원에서 들어가 보시는 것이 좋을 듯합니다. croatia_alphabets = ['c=','c-','dz=','d-','lj','nj','s=','z='] words = in.. 2023. 3. 29.