描述現在給你 n 個字串,每個字串呢都是由a到j的大寫字元組成的哈。
現在你需要將每個字元對映為乙個 0-9 的數字,不同的字元對映為不同的數字。
這樣每個字串就可看做是乙個整數了,當然有個小要求,這些整數必須是正整數且它們的字串不能有前導零。
現在問你怎樣對映字元才能使得這些字串表示的整數之和最大。
輸入多組測試資料。
每組資料第一行為乙個正整數 n,接下來有 n 行,每行乙個長度不超過 12 且僅包含大寫字母 a-j 的字串。 0< n <= 50,且至少存在乙個字元不是任何字串的首字母。
輸出對於每組測試資料輸出一行,這一行共有乙個數,表示最大和是多少。
樣例輸入1
複製
2abcbca
樣例輸出1
1875
權重。。。注意前導0,用乙個結構圖。。一開始用book,排序之後a陣列就變了。。wa哭了。。。
#include#include#include#include#includeusing namespace std;
typedef long long ll;
struct node
}a[15];
int book[15];
char str[20];
int main(void)
sort(a, a+10);
int flag;
for(int i = 9; i >= 0; i--) //給前導0賦值。。
}ll ans = 0;
for(int i = 9, t = 0; i >= 1; i--)
ans += a[t++].v*i;
}printf("%lld\n", ans);
}return 0;
}
qduoj 統計人數
描述 hs想要統計鎮上總共有多少人,但是他並不想乙個乙個的去數有多少個人,他想了乙個其他的方法,他在鎮上找了n個人,然後問每乙個人 你知道 除你之外 鎮上和你姓氏相同的人有多少個嗎?現在hs想要知道,鎮上最少有多少人?我們保證hs不會問同乙個人兩次。輸入第一行乙個正整數t t 100 表示t組測試樣...
qduoj 交通規劃
描述調查某城鎮交通狀況,得到城鎮道路統計表,表中列出了每條道路直接連通的城鎮。要使全省任何兩個城鎮間都可以實現交通 但不一定有直接的道路相連,只要互相間接通過道路可達即可 問最少還需要建設多少條道路?輸入測試輸入包含若干測試用例。每個測試用例的第1行給出兩個正整數,分別是城鎮數目n 1000 和道路...
qduoj 生化危機
1 2 利用鄰接表儲存圖,考慮到城市個數比較多所以使用動態陣列,注意陣列的初始化和各項資料的初始化 include include include includeusing namespace std const int m 1e4 5 struct node queueq int cnt m 儲存...