免费素材网站素材库,网站开发游戏程序开发,wordpress主题文件路径,重庆网站设计公司网站制作经验值#xff1a;2000
时间限制#xff1a;1000毫秒
内存限制#xff1a;128MB
庐阳区2020年信息学竞赛试题 不许抄袭#xff0c;一旦发现#xff0c;直接清空经验#xff01;
题目描述 Description
盒子里面有N个球#xff0c;每个球上都一个数。你每次可以取走一…经验值2000
时间限制1000毫秒
内存限制128MB
庐阳区2020年信息学竞赛试题 不许抄袭一旦发现直接清空经验
题目描述 Description
盒子里面有N个球每个球上都一个数。你每次可以取走一个球这个球上的数是X你就可以得到X的分值若还有其他的球上的数值也是X你可以将这些球一并取走 但是同时就有限制:其他的球若上面的数为X-1或X1的话就不能被取了相当于这些球被剔除。求你能取得的最大分值。
输入描述 Input Description
第一行一个整数N。
第二行N个整数为球上的数值Xi.
输出描述 Output Description
一个整数 意义如题所述。
样例输入 Sample Input
5 5 3 5 3 4
样例输出 Sample Output
16
数据范围及提示 Data Size Hint
对于30%的数据1N100,1Xi100。 对于50%的数据 1N10000,1Xi10000。 对于100%的数据 1N1000000,1Xi1000000
#includebits/stdc.h
using namespace std;
int n,x[10000005],t[10000005],mx;
long long dp[1000005];
int main(){
cinn;
for(int i1;in;i){cinx[i];t[x[i]];mxmax(mx,x[i]);
}
dp[0]0,dp[1]t[1];
for(int i2;imx;i){dp[i]max(dp[i-2]i*t[i],dp[i-1]);
}
coutdp[mx];
return 0;
}