分值 : 20 难度 : 送分题 思路 : 有点BitMap的意思,把字符映射成数,搞个数组存起来就完事了.
1234567891011121314151617181920212223242526272829
#include "stdio.h"#include "string.h"int main() { char S[1000] ,S2[1000] ; scanf("%s" , S) ; scanf("%s" , S2); int l1 = strlen(S) ; int l2 = strlen(S2) ; int data[125] ; for(int i = 0 ; i<125 ;i++) data[i] = 0 ; for(int i = 0 ; i< l2 ; i++) data[ (int)S2[i] ]++ ; int count =l2 ; for(int i = 0 ; i< l1 ; i++) { if(data[ (int)S[i] ] > 0 ) { data[ (int)S[i] ] -- ; count -- ; } } if(count == 0 ) printf("Yes %d" ,l1-l2) ; else printf("No %d", count );}