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

TJU Problem 2857 Digit Sorting

时间:2015-01-31 12:04:15      阅读:185      评论:0      收藏:0      [点我收藏+]

标签:

原题:

2857.   Digit Sorting
Time Limit: 1.0 Seconds   Memory Limit: 65536K
Total Runs: 3234   Accepted Runs: 1704



Several players play a game. Each player chooses a certain number, writes it down (in decimal notation, without leading zeroes) and sorts the digits of the notation in non-decreasing order, obtaining another number. The player who receives the largest number wins.

You are given the list of numbers initially chosen by the players. Output the winner‘s resulting number.

 

Input

The first line of each test case contains an integer N (1 ≤ N ≤ 50), indicating the number of the players. Then N integers followed in the second line. Each number will be between 0 and 100000, inclusive.

The input is terminated with N = 0.

 

Output

Output one line for each test case, indicating the winner‘s resulting number.

 

Sample Input

6
1 10 100 1000 10000 100000
3
9638 8210 331
0

Sample Output

1
3689



Source: TJU Team Selection Contest 2007 (1)

 

 

 

 1 #include <iostream>
 2 #include <algorithm>
 3 #include <string.h>
 4 using namespace std;
 5 
 6 int num[55];
 7 int b[55];
 8 
 9 int main()    {
10     int N;
11     memset(b, 0, sizeof(b));
12     while (cin >> N && N != 0)    {
13         for (int k = 0; k < N; k++)    {
14             memset(num, 0, sizeof(num));
15             int n, count = 0; cin >> n;
16             for (int i = 0; i < 10; i++)        {
17                 num[i] = n % 10;
18                 n /= 10;    count++;
19                 if (n == 0)    break;
20             }
21             sort(num, num + count);
22             //9for (int i = 0; i < count; i++)    cout << "num["<<i<<"] "<<num[i]<<endl;
23             //memcpy(b, num, sizeof(b));
24             //cout << "b["<<k<<"] "<<b[k] << endl;
25             for (int i = 0; i < count; i++)    {
26                 if (num[i] != 0)    b[k] = b[k]*10 + num[i];
27             }
28             //cout << "b["<<k<<"] "<<b[k] << endl;
29         }
30         sort(b, b + N);
31         cout << b[N - 1] << endl;
32         memset(b, 0, sizeof(b));
33     }
34     return 0;
35 }

 

 

 

TJU Problem 2857 Digit Sorting

标签:

原文地址:http://www.cnblogs.com/QingHuan/p/4263791.html

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