// a = 97, z = 122#include <stdio.h>#include <string.h>intmain(void){intnumberOfCaseT;charfirstChar[100][100],secChar[100][100];intengBasicFirst[26],engBasicSec[26];intfirstLen[100],secLen[100];scanf("%d",&numberOfCaseT);inti;for(i=0;i<numberOfCaseT;i++){scanf("%s %s",&firstChar[i],&secChar[i]);}for(i=0;i<numberOfCaseT;i++){intj,k=0;firstLen[i]=strlen(firstChar[i]);secLen[i]=strlen(secChar[i]);if(strcmp(firstChar[i],secChar[i])==0){printf("No.\n");}elseif(firstLen[i]!=secLen[i]){printf("No.\n");}else{for(j=0;j<firstLen[i];j++){engBasicFirst[firstChar[i][j]-97]++;engBasicSec[secChar[i][j]-97]++;}k=0;while(k<27){if(engBasicFirst[k]!=engBasicSec[k]){printf("No.\n");break;}k++;}if(k==27){printf("Yes\n");}}}return0;}
영어 순서 배열을 만들어 읽어드린 영어 문자열을 해당 알파벳의 위치에 1씩 + 시켜 결과값을 비교하는 알고리즘을 만들었습니다.
RexPark
영어 순서 배열을 만들어 읽어드린 영어 문자열을 해당 알파벳의 위치에 1씩 + 시켜 결과값을 비교하는 알고리즘을 만들었습니다.
예를들어
Apple 같은경우
engBasicFirst
[0][1][2][3][4]...[l번째]...[p번째]
1 0 0 0 1 .... 1 ... 2
제가 뽑은 결과값은 맞게 나오는데
오류로 나오는 이유를 모르겠네요 .ㅠㅠ
똑같은 문자열이면 No. 를 출력하도록 설정해도 오류가납니다
도와주세요!!
8년 전