NOI Mode - 西北工业大学明德学院算法兴趣小组第一次校内选拔赛后总结

链接: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)
N^2的搜索。。。亮点就是用于求绝对值的abs函数。
 
 
E题是一个简单的01背包
一个94分的181039同学写的是搜索
84分的181110同学看成可分背包了吧。
181274同学和181117同学的91分解:
    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]);
 
183266同学的ac解:
    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]);
 
问题在于181274同学没有等于号,很遗憾。也成为前四唯一没过01背包的辣个蓝人。
 
 
F题考查next_permutation函数,很遗憾,唯一正解是一个深度优先搜索
 
 
G题是大数乘法模拟。
 
H是标准深度优先搜索。
 
I是二维背包。非原创大题。
 
J是唯一的难题,宽度优先搜素。H题的代码改一改还是能跑一点分数的。
 
 
总得来说,这套题偏难偏基础,D题没人正解,我觉得是我的教学有问题,
 
关于比赛出题考虑:
 
1.比赛中做出题目,得到好的名次,可能起到肯定和鼓励作用;没做出题,没得到好的名次,也可能起到提醒和激励作用。将比赛看作一种育人手段,那么手段好或不好,其实是看对人的影响,而不是简单看比赛结果。 
 
2.一场经过选拔、经过筛选才有资格参与的大学生比赛,放一道连许多小学生都能完成的题目,真得合适吗?
 
3.希望各位能领悟icpc的精神:ICPC是由美国计算机协会(Association for Computing Machinery)于1970年发起组织的国际大学生程序设计竞赛(International Collegiate Programming Contest,简称ICPC) ,是一项旨在展示大学生创新能力、团队精神和在压力下编写程序、分析和解决问题能力的年度竞赛。icpc是表演赛,并非是类似高考的选拔赛。
 
诸位,最开心的是,经历这么多故事后,还可以像以前一样战斗!共勉。
 
 
posted @ 2019-11-21 00:56  tly2022  阅读(227)  评论(0编辑  收藏  举报