1) 이 코드는 제출한 코드와 동일한 코드가 아닌 것 같습니다.
2) 이 코드는 예제 입력 6을 넣었을 때 (디버그용 출력 결과와 함께) M 을 출력합니다.
16196번 - 중국 신분증 번호
다른 문제도 마찬가지겠지만, 이런 식의 "검증"을 구현하는 문제는 검증해야 할 조건을 하나도 빠짐없이 파악하는 것이 특히 중요합니다.
검증해야 할 조건을 모두 파악했다면, 그걸 프로그램 코드로 옮기는 것은 그다지 어렵지 않습니다.
작성자님은 "윤년과 체크썸" 이라고만 언급하고 있는데, 그렇게 생각하시면 안 됩니다.
문제에 언급되어 있는 모든 조건은 같은 정도로 중요합니다.
* 신분증의 지역 코드 6자리가 올바른 지역 코드와 정확하게 일치하는가?
* 신분증의 생일 코드 8자리를 YYYYMMDD 로 분해했을 때
- 윤년 여부를 고려했을 때 올바른 날짜인가?
- 1900년 1월 1일 ~ 2011년 12월 31일 사이의 날짜인가?
* 신분증의 순서 코드는 000 이 아닌가?
* 신분증의 체크섬 코드는 올바르게 계산되었는가?
댓글을 작성하려면 로그인해야 합니다.
hik3562 4년 전
고려해줬던건
- 윤년체크
- 체크썸 체크
두개를 해주었습니다.
그외에 제가 빠트린 부분이 있는지 질의하고싶습니다.