http://projecteuler.net/problem=22
#include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> using namespace std; int cmp(const void* e1,const void* e2) { char* a1; char* a2; a1 = (char*)e1; a2 = (char*)e2; return strcmp(a1,a2); } int main() { char str[6000][20]; int i = 0; freopen("names.txt","r",stdin); while(scanf("%s",str[i])!= EOF) { i++; } qsort(str,i,sizeof(str[0]),cmp); int sum = 0; int j,k; for(j = 0; j < i; j++) { int len = strlen(str[j]); int flag = 0; for(k = 0; k < len; k++) { flag += str[j][k] - 'A' + 1; } sum += flag * (j + 1); } printf("%d",sum); return 0; } http://projecteuler.net/problem=22
#include <iostream> #include <cstdio> #include <cstring> #include <cstdlib> using namespace std; int cmp(const void* e1,const void* e2) { char* a1; char* a2; a1 = (char*)e1; a2 = (char*)e2; return strcmp(a1,a2); } int main() { char str[6000][20]; int i = 0; freopen("names.txt","r",stdin); while(scanf("%s",str[i])!= EOF) { i++; } qsort(str,i,sizeof(str[0]),cmp); int sum = 0; int j,k; for(j = 0; j < i; j++) { int len = strlen(str[j]); int flag = 0; for(k = 0; k < len; k++) { flag += str[j][k] - 'A' + 1; } sum += flag * (j + 1); } printf("%d",sum); return 0; }
problem 22 字符串排序
最新推荐文章于 2020-12-13 20:17:56 发布