데이터 코딩랩
백준 11654 파이 아스키코드 본문
https://www.acmicpc.net/problem/11654
📄 실전 문제 접근 체크리스트
1초, 256MB
1단계: 문제 파악
☑️ 문제 요구사항 한 줄로 정리
: 알파벳 대문자, 소문자, 숫자0-9 중 하나가 주어졌을때, 주어진 글자의 아스키 코드값 출력
추가) 추가사항없음
☑️ 예제 입력/출력 확인
: 입력 → 첫줄 알파벳 대문자, 소문자, 숫자0-9 중 하나
: 출력 → 아스키코드 값
: 단순 출력 문제 같음 , 아스키 코드 개념을 알아야 함
추가) 추가사항없음
입력:
출력:
2단계: 입력 범위 → 시간복잡도 판단
입력 크기 (N) 적정 알고리즘 복잡도
☑️ 입력 크기 체크 후 -> 내가 쓸 수 있는 알고리즘 선별
한 글자니까 O(1) 아닌가?
입력받는법
문자는 그냥 입력받으면 될 것 같은데 숫자는 문자로 변환해야하는지? 모르겠음
메모리는 어떻게 계산해야할지 모르겠음
추가) 추가사항없음
✔️ 시간복잡도:
✔️ 메모리 :
3단계: 알고리즘 유형 선택
☑️ 문자열 처리, ord(), chr() 함수를 쓰는게 아닐 까 생각중
추가)
✔️ 추가사항 없음
4단계: 자료구조 & 흐름 정리
☑️ 어떤 자료구조를 쓸까?
→ 문자열 그대로 처리이지 않을까
☑️ 함수 나눌 필요 있는가?
→ 없음
☑️ 조건 분기 많을까? 시뮬레이션 필요한가?
→ 없음
☑️ 흐름 : input → 아스키코드 함수 -> 출력
추가)
✔️흐름 :
5단계: 구현 전 체크
☑️ 입출력 방식은?
→ A가 65가 나오는건 그냥 ord('A') 하면 되는 것 같은데 0을 아스키 코드 프로그램을 돌렸더니 48이 나왔다고 한다
0 : 48 ( 0을넣으면 48 이나오는)
9 : 57
☑️ 예외 상황은 어떤 게 있을까? (빈 입력, 중복 등)
→ 없는듯?
☑️ 시간 초과 가능성은?
→ 없는듯
추가)
✔️ 입출력:
→
✔️ 시간/메모리 초과 가능성 :
→
6단계: 제출 전 체크리스트
☑️ 예제 출력 전부 통과했는가?
☑️ 문제 조건 중 빠뜨린 거 없는가?
☑️ 반복문/조건문 이상한 부분 없는가?
☑️ 시간/메모리 초과 가능성 없나?
추가)
내 답
X = input()
if X.isdigit():
print(int(X)+48)
else:
asc = ord(X)
print(asc)
초간단 답
print(ord(input()))
아스키 코드의 0은 문자열이었음을...
요약:
문제 → 입력 크기 → 시간복잡도 판단 → 알고리즘 선택 → 자료구조 선택 → 구현
'Algorithm > 백준' 카테고리의 다른 글
백준 10809 파이썬 알파벳 찾기 (0) | 2025.04.15 |
---|---|
백준 11720 파이썬 숫자의 합 (0) | 2025.04.15 |
백준 9086 파이썬 문자 (0) | 2025.04.15 |
백준 2743 파이썬 단어 길이재기 (0) | 2025.04.15 |
백준 27866 파이썬 문자와 문자열 (0) | 2025.04.15 |