CF 170(div2)B
2013-05-23 13:54
435 查看
B. New Problem
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output
Coming up with a new problem isn't as easy as many people think. Sometimes it is hard enough to name it. We'll consider a title
original if it doesn't occur as a substring in any titles of recent Codeforces problems.
You've got the titles of n last problems — the strings, consisting of lowercase English letters. Your task is to find the shortest original title for the new problem. If there are multiple such titles, choose the lexicographically
minimum one. Note, that title of the problem can't be an empty string.
A substring s[l...
r] (1 ≤ l ≤ r ≤ |s|) of string
s = s1s2...
s|s| (where
|s| is the length of string s) is string
slsl + 1...
sr.
String x = x1x2...
xp is
lexicographically smaller than string y = y1y2...
yq, if either
p < q and x1 = y1, x2 = y2, ... , xp = yp,
or there exists such number r
(r < p, r < q), that
x1 = y1, x2 = y2, ... , xr = yr
and xr + 1 < yr + 1. The string characters are compared by their ASCII codes.
Input
The first line contains integer n (1 ≤ n ≤ 30) — the number of titles you've got to consider. Then follow
n problem titles, one per line. Each title only consists of lowercase English letters (specifically, it doesn't contain any spaces) and has the length from 1 to 20, inclusive.
Output
Print a string, consisting of lowercase English letters — the lexicographically minimum shortest original title.
Sample test(s)
Input
Output
Input
Output
Note
In the first sample the first 9 letters of the English alphabet (a, b, c, d, e, f, g, h, i) occur in the problem titles, so the answer is letter
j.
In the second sample the titles contain 26 English letters, so the shortest original title cannot have length 1. Title
aa occurs as a substring in the first title.
没看出来串的长度最多为2,傻b了。26^2 > 600。顺便膜拜大湿一记,随便就yy出来了d题,卧槽。。。
time limit per test
2 seconds
memory limit per test
256 megabytes
input
standard input
output
standard output
Coming up with a new problem isn't as easy as many people think. Sometimes it is hard enough to name it. We'll consider a title
original if it doesn't occur as a substring in any titles of recent Codeforces problems.
You've got the titles of n last problems — the strings, consisting of lowercase English letters. Your task is to find the shortest original title for the new problem. If there are multiple such titles, choose the lexicographically
minimum one. Note, that title of the problem can't be an empty string.
A substring s[l...
r] (1 ≤ l ≤ r ≤ |s|) of string
s = s1s2...
s|s| (where
|s| is the length of string s) is string
slsl + 1...
sr.
String x = x1x2...
xp is
lexicographically smaller than string y = y1y2...
yq, if either
p < q and x1 = y1, x2 = y2, ... , xp = yp,
or there exists such number r
(r < p, r < q), that
x1 = y1, x2 = y2, ... , xr = yr
and xr + 1 < yr + 1. The string characters are compared by their ASCII codes.
Input
The first line contains integer n (1 ≤ n ≤ 30) — the number of titles you've got to consider. Then follow
n problem titles, one per line. Each title only consists of lowercase English letters (specifically, it doesn't contain any spaces) and has the length from 1 to 20, inclusive.
Output
Print a string, consisting of lowercase English letters — the lexicographically minimum shortest original title.
Sample test(s)
Input
5 threehorses goodsubstrings secret primematrix beautifulyear
Output
j
Input
4 aa bdefghijklmn opqrstuvwxyz c
Output
ab
Note
In the first sample the first 9 letters of the English alphabet (a, b, c, d, e, f, g, h, i) occur in the problem titles, so the answer is letter
j.
In the second sample the titles contain 26 English letters, so the shortest original title cannot have length 1. Title
aa occurs as a substring in the first title.
没看出来串的长度最多为2,傻b了。26^2 > 600。顺便膜拜大湿一记,随便就yy出来了d题,卧槽。。。
#include <cstdio> #include <cstring> #include <iostream> #include <algorithm> #include <vector> #include <queue> #include <string> #include <map> using namespace std; const int maxn = 100 + 5; const int INF = 1000000000; string str; map<string,int> M; int main(){ int n; while(cin >> n){ M.clear(); for(int k = 0;k < n;k++){ cin >> str; int len = str.length(); for(int i = 0;i < len;i++){ for(int j = 1;i+j <= len;j++){ string s(str,i,j); M[s] = 1; } } } char ss[3]; int tag = 0; for(char i = 'a';i <= 'z';i++){ ss[0] = i;ss[1] = '\0'; string s(ss); if(M[s] == 0){ cout << s << endl; tag = 1; break; } } if(tag == 1) continue; for(char i = 'a';i <= 'z';i++){ ss[0] = i; if(tag == 1) break; for(char j = 'a';j <= 'z';j++){ ss[1] = j;ss[2] = '\0'; string s(ss); if(M[s] == 0){ cout << s << endl; tag = 1; break; } } } } return 0; }
相关文章推荐
- cf-#170-div2-后记
- CF 470 div2 B - D 题解.
- CF 95 div2 B
- CF-Codeforces Round #210 (Div. 1)-A-Levko and Array Recovery
- CF 245 div2
- CF-284-DIV1-C
- cf 189 div2 A - Magic Numbers
- CF 188 (div2 C)
- cf 131 DIV2 B
- CF #316(Div2)
- cf 372 div2 E. Sonya and Problem Wihtout a Legend dp
- cf/Codeforces Round #373 div1-C/div2-E Sasha and Array 线段树 + 维护矩阵快速幂
- CF_137_div2_E_Decoding Genome 题解
- 【Author : DS】CF #140 非常好的一套CF题目,DIV1 的E题实在没辙
- cf 127 div .1 Fragile Bridges(dp 好题)
- CF 203 div2 E. Wrong Floyd 图论
- CF Codeforces Round #257 (Div. 1) A (449A) Jzzhu and Chocolate
- 【CF】323 Div2. D. Once Again...
- CF-Codeforces Round #410 (Div. 2)-A~C
- cf-213-div1-A. Matrix