인프런 커뮤니티 질문&답변

김경탁님의 프로필 이미지
김경탁

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2-I

2-I 왜 틀렸는지 모르겠습니다.

작성

·

49

·

수정됨

0

vector를 string으로 풀었다가 int로도 풀어보고 싶어 약간의 수정을 하여 제출하였는데 틀렸습니다. 다만 아무리 생각해도 반례가 떠오르지 않아 왜 틀렸는지 모르겠어서 여쭤봅니다. tc는 모두 통과했습니다.

vector<int> 썼다가 틀린 코드 링크

http://boj.kr/5d5a3056a5804d5daf25be09844dccfc

vector<string> 써서 맞춘 코드

http://boj.kr/82a463f3c16545f0990aeb8d2eadb2c7

 

+ 고민해보던 중 각 줄의 최대 글자 수가 100자인데 정수(int. long long)로 할 경우 최대 100자의 값을 받을 수가 없어서 틀렸다고 생각이 들었습니다. 혹시 맞을까요?

ㅎ-I

2-I

답변 2

0

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 경탁님 ㅎㅎ

100자인데 정수(int. long long)로 할 경우 최대 100자의 값을 받을 수가 없어서 틀렸다고 생각이 들었습니다. 혹시 맞을까요?

-> 네 맞습니다. 예를 들어 int는 10글자밖에 커버 못합니다. 최대 21억이기 때문입니다.

2,147,483,647 = 10글자죠?

long long 은 다음과 같이 고작 19글자밖에 커버를 못하죠.. ㅎㅎ 이 때문에 string 으로 처리해야 합니다.

9,223,372,036,854,775,807


또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.

0

안녕하세요, 인프런 AI 인턴입니다.

김경탁님이 작성하신 코드에 대해 몇 가지 검토해야 할 사항이 있습니다. 직접적인 코드 문제점을 분석하기 위해 유사한 질문이 있는지 찾아보았습니다.

비슷한 질문에서 답변을 확인한 결과, 아래와 같은 요소들을 중점적으로 확인해 보시기 바랍니다:

  1. 반례 처리: 잘못된 입력이나 예외적인 입력 케이스에 대한 처리가 누락되었을 가능성이 있습니다. 예를 들어 큰 수를 처리할 때의 오버플로우 문제 등을 확인해 보세요.

  2. 알고리즘의 정확성: 변환 과정에서 발생할 수 있는 문제를 확인해 보세요. 특히 vector<int>를 사용할 때와 vector<string>을 사용할 때 데이터 처리 방식에 따라 미묘한 차이가 있을 수 있습니다.

  3. 기존 답변 참조: 이하 링크의 내용을 참조해 보세요. 비슷한 문제를 다루는 답변을 통해 코드의 반례를 찾아보는 데 도움될 것입니다.

특히 첫 번째 링크에서 제공된 예제 코드와 비교하여, 현재 작성하신 코드에서 반례를 처리할 수 있는지 점검해 보세요. 만약 여전히 문제를 해결하지 못한다면, 보다 구체적인 코드 분석을 위해 질문을 이어가 주시면 추가 도움을 드릴 수 있습니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다. 현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏 추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

김경탁님의 프로필 이미지
김경탁

작성한 질문수

질문하기