免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2217 | 回复: 7

[游戏娱乐] 突发奇想 难题解答:用shell脚本实现。 [复制链接]

论坛徽章:
0
发表于 2012-08-09 16:40 |显示全部楼层
需求:
1、输入1-10个三个数字的组合,分别代表金牌,银牌和铜牌; 1-10个组合的国家代号分别是A,B,C,D到J(不用输入);输入奖牌数组时,输入OK表明输入奖牌数结束,否则输入到第10组后,自动进入排序计算。中间输入错误时,采用重新输入的方式。
2、按照如下原则进行奖牌榜排序
     A.金牌数最多的国家排第一位,相同金牌数时比较银牌数,银牌数多的排名靠前,依次类推到铜牌;
     B.根据A原则排名一致的情况,为并列,按照国家代号进行排序列出,其中排名号不递增。处于并列
        排名后的国家排名按照前面国家数重新开始排名,比如1,2,2,4,其中并列两个第二名,那么
       后续为第四名。
3、命令行使用 medallist 或者 medallist.sh或者 medallist.py ,排序返回按照如下输出:
     Medal Board
     排名 国家代号 金牌数 银牌数 铜牌数
      所有数据都以空格间隔。

论坛徽章:
10
天蝎座
日期:2013-09-22 22:32:23程序设计版块每日发帖之星
日期:2016-08-07 06:20:00lufei
日期:2016-06-17 17:38:40程序设计版块每日发帖之星
日期:2016-06-12 06:20:002016科比退役纪念章
日期:2016-05-31 15:47:20CU十四周年纪念徽章
日期:2016-05-27 12:24:562015年亚洲杯之阿曼
日期:2015-05-03 21:01:352015年辞旧岁徽章
日期:2015-03-03 16:54:15天蝎座
日期:2013-10-20 21:05:24程序设计版块每日发帖之星
日期:2016-08-11 06:20:00
发表于 2012-08-10 13:54 |显示全部楼层
排序直接sort -rn 差不多了

论坛徽章:
92
2015年辞旧岁徽章
日期:2019-10-10 10:51:15CU大牛徽章
日期:2014-02-21 14:21:56CU大牛徽章
日期:2014-02-21 14:22:07羊年新春福章
日期:2019-10-10 10:51:39CU大牛徽章
日期:2015-02-28 17:45:34CU大牛徽章
日期:2019-10-10 10:55:38ChinaUnix元老
日期:2019-10-10 10:54:42季节之章:冬
日期:2019-10-10 10:57:17CU大牛徽章
日期:2014-02-21 14:22:52CU大牛徽章
日期:2014-03-13 10:40:28CU大牛徽章
日期:2014-03-13 10:40:30CU大牛徽章
日期:2014-02-21 14:23:15
发表于 2012-08-10 14:21 |显示全部楼层
标题党。

您的帖子长度不符合要求。 当前长度: 8 字节系统限制: 10 到 20000 字节

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
发表于 2012-08-13 11:55 |显示全部楼层
本帖最后由 rdcwayx 于 2012-08-13 13:57 编辑

我来替楼主给出数据文件。 源文件按照首字母排序
  1. Country Gold    Silver  Bronze  Total
  2. Afghanistan 0   0       1       1
  3. Algeria 1       0       0       1
  4. Argentina 1     1       2       4
  5. Armenia 0       1       2       3
  6. Australia 7     16      12      35
  7. Azerbaijan 2    2       6       10
  8. Bahamas 1       0       0       1
  9. Bahrain 0       0       1       1
  10. Belarus 3       5       5       13
  11. Belgium 0       1       2       3
  12. Botswana 0      1       0       1
  13. Brazil 3        5       9       17
  14. Bulgaria 0      1       1       2
  15. Canada 1        5       12      18
  16. Colombia 1      3       4       8
  17. Croatia 3       1       2       6
  18. Cuba 5  3       6       14
  19. Cyprus 0        1       0       1
  20. Czech Republic 4        3       3       10
  21. Democratic People's Republic of Korea 4 0       2       6
  22. Denmark 2       4       3       9
  23. Dominican Republic 1    1       0       2
  24. Egypt 0 2       0       2
  25. Estonia 0       1       1       2
  26. Ethiopia 3      1       3       7
  27. Finland 0       1       2       3
  28. France 11       11      12      34
  29. Gabon 0 1       0       1
  30. Georgia 1       3       3       7
  31. Germany 11      19      14      44
  32. Great Britain 29        17      19      65
  33. Greece 0        0       2       2
  34. Grenada 1       0       0       1
  35. Guatemala 0     1       0       1
  36. Hong Kong, China 0      0       1       1
  37. Hungary 8       4       5       17
  38. India 0 2       4       6
  39. Indonesia 0     1       1       2
  40. Ireland 1       1       3       5
  41. Islamic Republic of Iran 4      5       3       12
  42. Italy 8 9       11      28
  43. Jamaica 4       4       4       12
  44. Japan 7 14      17      38
  45. Kazakhstan 7    1       5       13
  46. Kenya 2 4       5       11
  47. Kuwait 0        0       1       1
  48. Latvia 1        0       1       2
  49. Lithuania 2     1       2       5
  50. Malaysia 0      1       1       2
  51. Mexico 1        3       3       7
  52. Mongolia 0      2       3       5
  53. Montenegro 0    1       0       1
  54. Morocco 0       0       1       1
  55. Netherlands 6   6       8       20
  56. New Zealand 5   3       5       13
  57. Norway 2        1       1       4
  58. People's Republic of China 38   27      22      87
  59. Poland 2        2       6       10
  60. Portugal 0      1       0       1
  61. Puerto Rico 0   1       1       2
  62. Qatar 0 0       2       2
  63. Republic of Korea 13    8       7       28
  64. Republic of Moldova 0   0       2       2
  65. Romania 2       5       2       9
  66. Russian Federation 24   25      33      82
  67. Saudi Arabia 0  0       1       1
  68. Serbia 1        1       2       4
  69. Singapore 0     0       2       2
  70. Slovakia 0      1       3       4
  71. Slovenia 1      1       2       4
  72. South Africa 3  2       1       6
  73. Spain 3 10      4       17
  74. Sweden 1        4       3       8
  75. Switzerland 2   2       0       4
  76. Taipei (Chinese Taipei) 0       1       1       2
  77. Tajikistan 0    0       1       1
  78. Thailand 0      2       1       3
  79. Trinidad and Tobago 1   0       3       4
  80. Tunisia 1       1       1       3
  81. Turkey 2        2       1       5
  82. Uganda 1        0       0       1
  83. Ukraine 6       5       9       20
  84. United States of America 46     29      29      104
  85. Uzbekistan 1    0       3       4
  86. Venezuela 1     0       0       1
复制代码

论坛徽章:
15
2015年辞旧岁徽章
日期:2015-03-03 16:54:15双鱼座
日期:2015-01-15 17:29:44午马
日期:2015-01-06 17:06:51子鼠
日期:2014-11-24 10:11:13寅虎
日期:2014-08-18 07:10:55酉鸡
日期:2014-04-02 12:24:51双子座
日期:2014-04-02 12:19:44天秤座
日期:2014-03-17 11:43:36亥猪
日期:2014-03-13 08:13:51未羊
日期:2014-03-11 12:42:03白羊座
日期:2013-11-20 10:15:18CU大牛徽章
日期:2013-04-17 11:48:45
发表于 2012-08-13 11:55 |显示全部楼层
最终要求的结果是这样的:
  1. 1        United States of America 46    29      29      104
  2. 2        People's Republic of China 38  27      22      87
  3. 3        Great Britain 29       17      19      65
  4. 4        Russian Federation 24  25      33      82
  5. 5        Republic of Korea 13   8       7       28
  6. 6        Germany 11     19      14      44
  7. 7        France 11      11      12      34
  8. 8        Italy 8        9       11      28
  9. 9        Hungary 8      4       5       17
  10. 10       Australia 7    16      12      35
  11. 11       Japan 7        14      17      38
  12. 12       Kazakhstan 7   1       5       13
  13. 13       Netherlands 6  6       8       20
  14. 14       Ukraine 6      5       9       20
  15. 15       Cuba 5 3       6       14
  16. 16       New Zealand 5  3       5       13
  17. 17       Islamic Republic of Iran 4     5       3       12
  18. 18       Jamaica 4      4       4       12
  19. 19       Czech Republic 4       3       3       10
  20. 20       Democratic People's Republic of Korea 4        0       2       6
  21. 21       Spain 3        10      4       17
  22. 22       Brazil 3       5       9       17
  23. 23       Belarus 3      5       5       13
  24. 24       South Africa 3 2       1       6
  25. 25       Ethiopia 3     1       3       7
  26. 26       Croatia 3      1       2       6
  27. 27       Romania 2      5       2       9
  28. 28       Kenya 2        4       5       11
  29. 29       Denmark 2      4       3       9
  30. 30       Azerbaijan 2   2       6       10
  31. 30       Poland 2       2       6       10
  32. 32       Turkey 2       2       1       5
  33. 33       Switzerland 2  2       0       4
  34. 34       Lithuania 2    1       2       5
  35. 35       Norway 2       1       1       4
  36. 36       Canada 1       5       12      18
  37. 37       Sweden 1       4       3       8
  38. 38       Colombia 1     3       4       8
  39. 39       Georgia 1      3       3       7
  40. 39       Mexico 1       3       3       7
  41. 41       Ireland 1      1       3       5
  42. 42       Argentina 1    1       2       4
  43. 42       Slovenia 1     1       2       4
  44. 42       Serbia 1       1       2       4
  45. 45       Tunisia 1      1       1       3
  46. 46       Dominican Republic 1   1       0       2
  47. 47       Trinidad and Tobago 1  0       3       4
  48. 47       Uzbekistan 1   0       3       4
  49. 49       Latvia 1       0       1       2
  50. 50       Algeria 1      0       0       1
  51. 50       Bahamas 1      0       0       1
  52. 50       Grenada 1      0       0       1
  53. 50       Uganda 1       0       0       1
  54. 50       Venezuela 1    0       0       1
  55. 55       India 0        2       4       6
  56. 56       Mongolia 0     2       3       5
  57. 57       Thailand 0     2       1       3
  58. 58       Egypt 0        2       0       2
  59. 59       Slovakia 0     1       3       4
  60. 60       Armenia 0      1       2       3
  61. 60       Belgium 0      1       2       3
  62. 60       Finland 0      1       2       3
  63. 63       Bulgaria 0     1       1       2
  64. 63       Estonia 0      1       1       2
  65. 63       Indonesia 0    1       1       2
  66. 63       Malaysia 0     1       1       2
  67. 63       Puerto Rico 0  1       1       2
  68. 63       Taipei (Chinese Taipei) 0      1       1       2
  69. 69       Botswana 0     1       0       1
  70. 69       Cyprus 0       1       0       1
  71. 69       Gabon 0        1       0       1
  72. 69       Guatemala 0    1       0       1
  73. 69       Montenegro 0   1       0       1
  74. 69       Portugal 0     1       0       1
  75. 75       Greece 0       0       2       2
  76. 75       Republic of Moldova 0  0       2       2
  77. 75       Qatar 0        0       2       2
  78. 75       Singapore 0    0       2       2
  79. 79       Afghanistan 0  0       1       1
  80. 79       Bahrain 0      0       1       1
  81. 79       Hong Kong, China 0     0       1       1
  82. 79       Saudi Arabia 0 0       1       1
  83. 79       Kuwait 0       0       1       1
  84. 79       Morocco 0      0       1       1
  85. 79       Tajikistan 0   0       1       1
复制代码

论坛徽章:
0
发表于 2012-08-13 14:53 |显示全部楼层
回复 4# rdcwayx
版主给力,是这样子的。可惜 帖子沉了。。。

   

论坛徽章:
0
发表于 2012-08-22 17:46 |显示全部楼层
嘿嘿 标记一下。

论坛徽章:
0
发表于 2012-08-23 08:41 |显示全部楼层
怎么感觉是个作业……
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

SACC2019中国系统架构师大会

【数字转型 架构演进】SACC2019中国系统架构师大会
2019年10月31日~11月2日第11届中国系统架构师大会(SACC2019)将在北京隆重召开。四大主线并行的演讲模式,1个主会场、20个技术专场、超千人参与的会议规模,100+来自互联网、金融、制造业、电商等领域的嘉宾阵容,将为广大参会者提供一场最具价值的技术交流盛会。




----------------------------------------

大会官网>>
  

北京盛拓优讯信息技术有限公司. 版权所有 16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122
中国互联网协会会员  联系我们:huangweiwei@it168.com
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP