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

힘내자님의 프로필 이미지
힘내자

작성한 질문수

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

16. Anagram (구글 인터뷰 문제)

질문이 있습니다

해결된 질문

작성

·

189

0

강의 보기전에 최대한 고민해보고 풀어보라고하셔서

고민을 하는데 해결능력이 많이 부족한지 잘 떠오르지않아서

그냥  이런식으로 좀 어거지로 코드를 짰는데 채점을 돌리니

다 맞긴 맞았습니다.. 이런 방법도 맞다고 할수있나요??

#include<stdio.h>
using namespace std;

char a[100];
char b[100];




int main(){
//freopen("input.txt", "rt", stdin);

int i,temp=0, cnt=0, temp1=0, cnt1=0;

scanf("%s",&a);
scanf("%s",&b);


for(i=0; a[i]!='\0'; i++)
{
   	temp=temp+ a[i];
   	cnt++;
}


for(i=0; b[i]!='\0'; i++)
{
   	temp1=temp1+ b[i];
   	cnt1++;

}


if(cnt==cnt1&&temp==temp1)
printf("YES");

else
printf("NO");




	return 0;
}

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

먼저 스스로 코드를 짜보시고난 후 영상을 보고 본인이 짠코드와 영상의 코드를 비교분석해 보면 실력이 급성장 할 겁니다. 

위에 코드는 좋은 아이디어 입니다만 반례가 있는 코드입니다. 

ADE와 BDD 가 YES가 나오는 코드입니다. 단순히 아스키코드값을 더하는 것으로는 안됩니다. 영상에서 설명하는 방법으로 하시기 바랍니다. 채점폴더의 데이터는 바꿔놓아야 겠네요.

힘내자님의 프로필 이미지
힘내자

작성한 질문수

질문하기