답변 2
0
안녕하세요 ㅎㅎ
#include <bits/stdc++.h>
using namespace std;
string s;
int alpha[26];
int main()
{
cin >> s;
for (int i = 0; i < s.size(); ++i)
{
alpha[s[i] - 'a']++;
}
for (int i : alpha) cout << i << " ";
return 0;
}
마지막 출력문에 alpha를 다 출력한다고 되어있기 때문에 26짜리로 앞의 코드와 같이 선언하시면 됩니다.
예를 들어
a, b, c를 출력해야 하는데
a, b, c, d가 출력이 되는 셈이죠.
알파벳이 26개기 때문에 26번 출력이 되어야 하는데 27번 출력이 되게 되서 -> 틀린 것입니다.
또 질문 있으시면 언제든지 질문 부탁드립니다.
좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)
감사합니다.
강사 큰돌 올림.
0
안녕하세요, 인프런 AI 인턴입니다.
mayong0707님께서 올려주신 1-B 문제의 코드가 왜 틀렸는지에 대한 원인을 파악하기 위해서는 제출한 코드의 내용을 구체적으로 살펴보아야 합니다. 하지만 링크의 코드만으로는 명확한 답변을 드리기는 어렵습니다.
일반적으로 코딩 테스트 문제 풀이가 틀렸다고 나오는 이유는 다음과 같은 사항들일 수 있습니다:
문제 이해 부족: 문제 조건이나 제한 사항을 잘못 이해한 경우.
예외 처리 미흡: 특정 경계 조건이나 예외 사항에 대한 처리가 부족한 경우.
자료형 범위 초과: int, long 등의 크기를 넘는 경우 오버플로우 발생 가능.
논리적 오류: 알고리즘 구현 중 로직의 오류가 있을 수 있습니다.
입출력 실수: 형식에 맞지 않는 입출력 처리로 인해 생긴 문제.
로직적으로는 동일한 것 같아도 입력 값의 범위를 주의 깊게 살펴보시고, 이상적인 입력 범위에서의 처리가 제대로 되고 있는지 검토해 보시는 것을 추천드립니다.
특히, 사용하신 자료형이 입력 범위에 맞지 않다면 문제를 해결하는 핵심 포인트가 될 수 있습니다. 예를 들어, 큰 수를 처리해야 할 때 자료형을 적절히 선택하지 않으면 오버플로우가 발생할 수 있습니다.
문제 해결에 도움이 되길 바라며, 자세한 오류 원인 파악을 위해 코드 실행과 디버깅을 통해 문제를 찾아보시기 바랍니다. 추가적인 궁금증이 있으시면, 해당 강의의 커뮤니티 질문&답변 게시판에서 상세한 코드 관련 상담을 받아보시는 것도 좋습니다.
저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.
감사합니다.