해결된 질문
작성
·
2.5K
·
수정됨
0
안녕하세요 큰돌님! 문제를 풀어보았는데 문제에 있던 예제들과 제가 생각해 본 여러 테스트 케이스들을 넣어보았고 모두 정상적으로 출력이 됐습니다. 하지만 문제를 제출하고 나면 사진과 같은 오류가 뜨고 틀렸다 나오는데 해결 방법이 있을까요..?
http://boj.kr/7a8e29bc045a4ce1a598e71b72cb331a
Main.cc: In function ‘int main()’:
Main.cc:16:35: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
16 | for (int j = 0; j < w.size(); j++) {
| ~~^~~~~~~~~~
Main.cc:57:27: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<int>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare]
57 | for (int i = 0; i < arr.size(); i++) {
| ~~^~~~~~~~~~~~
답변 1
1
안녕하세요. whddls3318님 ㅎㅎ
저 warning은 상관없습니다. w.size()라는 걸 보면 사실 저게 size_t라는 타입이기 때문에 (int)w.size()가 올바른 코드긴 해요. but, 그러실 필요는 전혀 없습니다. 그냥 .size()를 해도 됩니다.
자, 그러면 이게 왜 틀릴까요? 이 문제의 지문을 다시보죠. "다음 N개의 줄에는 각 줄의 내용이 주어진다. 각 줄은 최대 100글자이고, 항상 알파벳 소문자와 숫자로만 이루어져 있다.", 그렇다면 다음 코드는 어떤문제가 있을까요?
ret += que.front() * (int)pow(10, k);
또 질문 있으시면 언제든지 질문 부탁드립니다.
감사합니다.
강사 큰돌 올림.
앗.. 10의 100승이라니 터무니없네요..ㅎㅎ; 답변 감사드립니다!!