zoukankan      html  css  js  c++  java
  • NOI普及组第三次线上测试总结兼题解

    T1:

    题面:

    在这里插入图片描述

    题解:

    用string记录名字,再输入求救字符串,每看到s就判断前两是否为so,如果是就ans++,最后判断最大输出。

    分数:

    估分:100

    实际:100

    T2:

    题面:

    在这里插入图片描述

    题解:

    普通的dfs,就像细胞那样,值得一提的是我的判断:我用了一个数组把每个星座的大小记录起来,然后遍历一遍,判重输出答案。

    分数:

    估分:100

    实际:50

    失分:

    就是错在我的那个判断,我的判断方法会使最后一种星系没被判断到,多判断一个就ok了。

    T3:

    题面:

    在这里插入图片描述

    题解:

    暴力50%(不过我50不是暴力,而是数据开小了):

    把它当成一个无脑 的暴力01背包问题,把kik_iaia_i当成单纯的kik_iaia_i,时间复杂度为O(kik_i* aia_i*tit_i)。

    二进制优化背包100%:

    如果想让kik_iaia_i不是单纯的kik_iaia_i,那就需要二进制优化

    首先,我们知道20+21+……2n=2n+1-1,且用20,21……2n,可以组成2n+1以下的所有整数,且绝不超2n+1
    然后,根据上面的的定理,我们就能得到2n+1-1的优化,但别的呢???
    我们再放一个kik_i-(2n+1-1),再配上前面的就可以组成别的数了。

    放一个二进制优化的代码:

    		int q=read(),p=read(),k=1;
    		while(k<=p){
    			w[++w[0]]=k*q;
    			p-=k;
    			k*=2;
    		}
    		if(p!=0)
    		w[++w[0]]=p*q;
    

    分数:

    估分:100

    实际:50

    失分:

    数据开小了


    总结:

    这次比赛本来可以AK的,但实在是太不小心了,二,三题都错在一点细节,数据范围这个下次一定注意,如果再犯错了,就发40次古诗。
    但这个像第二题一样的细节问题我也经常犯,我也有验算数据,但还是错,请问各位有没什么好的方法给我参考参考。

  • 相关阅读:
    NoHttp开源Android网络框架1.0.0之架构分析
    3种浏览器性能測试
    自己定义控件-画板,橡皮擦,刮刮乐
    android优化 清除无效代码 UCDetector
    iOS推送 (百度推送)
    C#中的协变OUT和逆变
    使用反射构造对象实例并动态调用方法
    用反射获取构造函数带参数的实例对象
    自己实现一个IOC(控制翻转,DI依赖注入)容器
    func 和action 委托的使用
  • 原文地址:https://www.cnblogs.com/2020-zhy-jzoj/p/13159874.html
Copyright © 2011-2022 走看看