CodeForces546B Soldier and Badges 解题报告
Posted louhancheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CodeForces546B Soldier and Badges 解题报告相关的知识,希望对你有一定的参考价值。
最近忙。。。先上代码吧。。。有空继续写题解。。。
#include<cstdio> #include<queue> using namespace std; #define MAXN 3005 int n, ans, t, s; int nn; int a[MAXN * 2]; int main(){ scanf( "%d", &n ); for ( int i = 1; i <= n; ++i ) scanf( "%d", &t ), a[t]++, s += t, nn = max( nn, t ); t = 0; for ( int i = 1; i <= 6000; ++i ){ if ( t == 0 && i > nn ) break; if ( t > 0 && a[i] == 0 ) t--, ans += i; if ( a[i] > 1 ) t += a[i] - 1; if ( a[i] ) ans += i; } printf( "%d ", ans - s ); return 0; }
以上是关于CodeForces546B Soldier and Badges 解题报告的主要内容,如果未能解决你的问题,请参考以下文章
CodeForces 546B-Soldier and Badges
CodeForces-546D Soldier and Number Game 筛法+动态规划