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

CodeForces 546B-Soldier and Badges

时间:2016-06-16 21:48:10      阅读:155      评论:0      收藏:0      [点我收藏+]

标签:

题意:
  给出一些数字,要求每个数字都不一样需要增加几


思路:
  先排序,然后一个个增加,最后求总和差

 

 

代码如下:

 

 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 #include <fstream>
 5 #include <cmath>
 6 #include <ctime>
 7 #include <cstdlib>
 8 #include <algorithm>
 9 #include <set>
10 #include <map>
11 #include <list>
12 #include <stack>
13 #include <queue>
14 #include <iterator>
15 #include <vector>
16 
17 using namespace std;
18 
19 #define LL long long
20 #define INF 0x3f3f3f3f
21 #define MOD 1000000007
22 #define MAXN 10000010
23 #define MAXM 1000010
24 
25 const int maxm = 3005;
26 int a[maxm];
27 
28 //方法一:
29 
30 int main()
31 {
32     int n;
33     int sum;
34     while(scanf("%d", &n)==1&&n)
35     {
36         memset(a, 0, sizeof(a));
37         int i;
38         pos = 0;
39         for(i = 0; i < n; i++ )
40             scanf("%d", &a[i]);
41         sort(a, a+n);
42         for(i = 1; i < n; i++ )
43         {
44             while(a[i] <= a[i-1])
45             {
46                 a[i] += 1;
47                 sum += 1;
48             }
49         }
50         printf("%d\n", sum);
51     }
52 
53     return 0;
54 }
55 
56 
57 
58 
59 //方法二:
60 
61 int main()
62 {
63     int n;
64     while(scanf("%d", &n) == 1)
65     {
66         memset(a, 0, sizeof(a));
67         int sum1 = 0, sum2 = 0;
68         for(int i = 1; i <= n; i++ )
69         {
70             scanf("%d", &a[i]);
71             sum1 += a[i];
72         }
73         sort(a+1, a+n+1);
74         sum2 = a[1];
75         for(int i = 2; i <= n; i++ )
76         {
77             if(a[i] == a[i-1])
78                 a[i]++;
79             else if(a[i] < a[i-1])
80                 a[i] = a[i-1] + 1;
81             sum2 += a[i];
82         }
83         printf("%d\n", sum2 - sum1);
84     }
85     return 0;
86 }

 

CodeForces 546B-Soldier and Badges

标签:

原文地址:http://www.cnblogs.com/xl1164191281/p/5592137.html

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