题目链接:这里
题意:有n个字符串,这个人从短的密码开始输入,如果密码长度相同,那就随便输出其中一个。每当他输错k次的时候,就会暂停五秒。问你最好情况下,他需要多少秒输对密码,最差情况呢?
解法:水题, 排序后贪心。
//CF 721B
#include <bits/stdc++.h>
using namespace std;
string s[105];
string b;
bool cmp(string x, string y){
return x.size() < y.size();
}
int main(){
int n, k;
scanf("%d%d", &n, &k);
for(int i = 1; i <= n; i++) cin >> s[i];
cin >> b;
sort(s+1, s+n+1, cmp);
int ans1 = 0, ans2 = 0;
for(int i = 1; i <= n; i++){
if(s[i].size() < b.size()) ans1++;
if(s[i].size() <= b.size() && s[i] != b) ans2++;
}
cout << 1 + ans1/k*5+ ans1 << " " << 1 + ans2/k*5 + ans2 << endl;
return 0;
}