【老潘信息学系列】2018年NOIP竞赛题详解(一)

网友投稿 2019-06-14 15:44

2019年NOIP信息学竞赛,将在10月举行。潘老师将用一个系列,详细讲解过往5届竞赛的典型竞赛题,开拓孩子的思维,提升比赛成绩。同时,潘老师将为全四川省娃娃免费提供问题解答。家长、孩子有任何信息学方面的难题,都可以加老师微信询问。 (长按识别二维码) 获得NOIP一等奖难吗?在潘老师看来,对于四川学生娃来说,并不难,具备一定的基础,再加上稳定的发挥,一等奖较容易。所以,孩子并不是一定要特牛,才能获得一等奖。上海市的一等奖需要300多分,四川省只需要200分左右。后续潘老师会分析,为什么一等奖很容易。 2018年NOIP信息学竞赛,有一道题叫“龙虎斗”,这道题目难度中等,考察的是学生的基本功是否扎实。这题如果顺利拿到分,再加上送分题,200分就可以拿到,也就是说一等奖到手了。孩子将成为艺高人胆大的那一类人:) 详解如下: 解题思路: 1) 天降神兵,不管他降落到哪里,都是这样:         a[p1]+=s1; 2)算出龙的气势dragon         for(int i=1;i<=m-1;i++)             dragon+=a[i]*(m-i); 3)算出虎的气势tiger         for(int i=m+1;i<=n;i++)             tiger+=a[i]*(i-m); 4)得到双方的气势后,需要判断哪方的气势小一些, S2位工兵应该被派到气势小的一方。     if(dragon<="" p="">             for(int i=1;i<=m-1;i++){                 long long temp=dragon+s2*abs(i-m);                 if(abs(temp-tiger)< p="">                     minn=abs(temp-tiger);                     pos=i;                 }             }         }     else if(dragon>tiger){//增加到虎          for(int i=m+1;i<=n;i++){             long long temp=tiger+s2*abs(i-m);             if(abs(temp-dragon)< p="">                 minn=abs(temp-dragon);                 pos=i;             }         }     }     else         pos=m; 至此,问题得解,pos就是s2个工兵应该被派往的位置。是不是很容易呢? 点击下面“阅读原文”可获取更多信息。可以加微信索要详细代码、资料。

--end--

声明:本文章由网友投稿作为教育分享用途,如有侵权原作者可通过邮件及时和我们联系删除:freemanzk@qq.com