多多的字符变换
#include <stdio.h>
int cmp(char *a, char *b){
return (int)*a-(int)*b;
}
int main(){
int len = 0,max=0,min=0;
long long result = 0;
scanf("%d\n",&len);
char* str1 = (char*)malloc(len);
char* str2 = (char*)malloc(len);
scanf("%s\n%s\n",str1,str2);
qsort(str1,len,sizeof(char),cmp);
qsort(str2,len,sizeof(char),cmp);
//printf("str1 = %s\nstr2 = %s\n",str1,str2);
for(int i=0; i<len; i++){
//偷懒的方法,想要更快应该用两个指针来比较
if(str1[i] != str2[i]){
max = str1[i]-'a';
min = str2[i]-'a';
//一定要注意绝对值的问题,不能到最后才累加相减
//(不能确定相同的位置上字符的大小)
result+=max>min?max-min:min-max;
}
}
//printf("max=%d,min=%d\n",max,min);
printf("%d\n",result);
return 0;
} 
京公网安备 11010502036488号