码迷,mamicode.com
首页 > 其他好文 > 详细

【sicily系列】 1198 substring

时间:2014-11-13 12:40:05      阅读:221      评论:0      收藏:0      [点我收藏+]

标签:des   style   blog   http   io   color   ar   os   sp   

Description

Dr lee cuts a string S into N pieces,s[1],…,s[N].  

Now, Dr lee gives you these N sub-strings: s[1],…s[N]. There might be several possibilities that the string S could be. For example, if Dr. lee gives you three sub-strings {“a”,“ab”,”ac”}, the string S could be “aabac”,”aacab”,”abaac”,…

Your task is to output the lexicographically smallest S.

Input

The first line of the input is a positive integer T. T is the number of the test cases followed.

The first line of each test case is a positive integer N (1 <=N<= 8 ) which represents the number of sub-strings. After that, N lines followed. The i-th line is the i-th sub-string s[i]. Assume that the length of each sub-string is positive and less than 100.

Output

The output of each test is the lexicographically smallest S. No redundant spaces are needed.

Sample Input
1
3
a
ab
ac
Sample Output
aabac

水题,做一个比较就可以了。比较A+B和B+A

bubuko.com,布布扣
 1 #include<iostream>
 2 #include<string>
 3 #include<vector>
 4 #include<algorithm>
 5 using namespace std;
 6 bool cmp (string a, string b) {
 7   return a + b > b + a;
 8 }
 9 int main() {
10   int t;
11   cin >> t;
12   while (t--) {
13   int n;
14   string a;
15   vector<string> q;
16   cin >> n;
17   while (n--) {
18     cin >> a;
19     q.push_back(a);
20   }
21   sort(q.begin(), q.end(), cmp);
22   while (!q.empty()) {
23     cout << q.back();
24     q.pop_back();
25   }
26   cout << endl;
27   }
28   return 0;
29 }                                 
View Code

 

【sicily系列】 1198 substring

标签:des   style   blog   http   io   color   ar   os   sp   

原文地址:http://www.cnblogs.com/tonyyangsysu/p/4094571.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!