#include <stdio.h> #include <string.h> #include <stdbool.h> int main() { char line1[110]; char line2[110]; char line3[210]; scanf("%s", line1); scanf("%s", line2); scanf("%s", line3); int sta[30]; int lat[30]; memset(sta, 0, sizeof(sta)); memset(lat, 0, sizeof(lat)); int length1=strlen(line1); int length2=strlen(line2); int length3=strlen(line3); int i; for(i=0; i<length1; ++i) { ++sta[line1[i]-65]; } for(i=0; i<length2; ++i) { ++sta[line2[i]-65]; } for(i=0; i<length3; ++i) { ++lat[line3[i]-65]; } bool Put=true; for(i=0; i<26; ++i) { if(sta[i]!=lat[i]) { Put=false; break; } } if(Put) printf("YES\n"); else printf("NO\n"); return 0; }
@改进版
#include <stdio.h> #include <string.h> #include <stdbool.h> int main() { char line[210]; int sta[30]; memset(sta, 0, sizeof(sta)); scanf("%s", line); int length=strlen(line); int i; for(i=0; i<length; ++i) { ++sta[line[i]-65]; } scanf("%s", line); length=strlen(line); for(i=0; i<length; ++i) { ++sta[line[i]-65]; } scanf("%s", line); length=strlen(line); for(i=0; i<length; ++i) { --sta[line[i]-65]; } bool Put=true; for(i=0; i<26; ++i) { if(sta[i]!=0) { Put=false; break; } } puts(Put?"YES":"NO"); return 0; }