链接:http://60.205.225.45/contestrank-oi.php?cid=1001
结果分数是,第一是658,第二是354,第三是300,第四是209,第五是202,第六是 162,第七是141,第八是106,余下6个均不足100。
ABC为填空,DEFGHIJ为代码题。
A为直接搜索即可得到答案,B需要应用long long数据结构,C是防AK题。
D题是一个计数排序题(其实一开始是个可分背包,后来改成现在的题面了)。
18级提供的唯一解是
for(int i=0;i<n;i++) for(int j=i+1;j<n;j++) if(a[i]+a[j] == m && abs(a[i] - a[j])<k) int dp[10000]={0}; for(i=0;i<n;i++) for(j=m;j>a[i];j--) { dp[j]=max(dp[j-a[i]]+b[i],dp[j]); memset(dp,0,sizeof(dp)); for(i=1;i<=n;i++){ for(j=m;j>=a[i];j--){ dp[j]=max(dp[j],dp[j-a[i]]+b[i]);next_permutation函数,很遗憾,唯一正解是一个深度优先搜索NOI Mode - 西北工业大学明德学院算法兴趣小组第一次校内选拔赛后总结
原文:https://www.cnblogs.com/tlysMoodspace/p/11887121.html