第一题:

设 S(N)表示 N 的各位数字之和,如 S(484)=4+8+4=16,S(22)=2+2=4。如果一个正整数 x满足 S(x*x)=S(x)*S(x),我们称 x 为 Rabbit Number。比方说,22 就是一个 Rabbit Number,因为 S(484)=S(22)*S(22)。
现在,给出一个区间[L,R],求在该区间内的 Rabbit Number 的个数。  1≤L≤R≤10^9

解题过程:

1.首先爆搜把表给打了出来([1,10^9] 跑了5分钟)。。然后发现所有的rabbit number 各个数位不会超过3。。 不会严谨的证明,但是想想应该是对的。。

设数X某一位是 5 ,5*5=25, 那么数字5对(S(X*X))贡献值是2+5=7远小于25。

2.那么枚举9位的4进制数即可。。还有一个10位数10^9也是rabbit number。 时间复杂度(4^9)轻松过。

3.题解上说一个数是rabbit number 当且仅当平方的时候没有出现进位,不知道为什么。。。不过枚举的方法已经够快了。

初始得分100.


第二题:

题目大意:给出A,B, 两个人轮流,每次给A或者B 加上1,如果 AB  大于给定的N就输了。。判断必胜者或者平局。1≤N≤10^8

解题过程:

1.首先容易看出这是个博弈问题,且状态集有限。

2.直接根据必胜态必败态来保存状态。F[i][j]表示当轮到某个人时,A=i,B=j,他是必胜还是必败。。 根据“一个状态是必败态当且仅当它的所有后继是必胜态”的原则转移状态。

3.细节处理:当B=1的时候,有可能两个人一直轮流给A+1,那么递归太多,系统栈就要爆掉了。所以加一个奇偶性剪枝,当B=1 && A*A>N的时候,肯定不会去+B,不然就输了。所以根据(N-A)的奇偶性就可以提前判断谁必胜了。。(不过极限数据还是会卡掉的,N=10^8,A=B=1)最多要递归10^4层。

4.最好其实还是用递推来写。不过记忆化也能AC。。没有极限数据。

初始得分0分。


第三题:

题目描述:在一条数轴上有 N 个点,分别是 1~N。一开始所有的点都被染成黑色。接着我们进行 M 次操作,第 i 次操作将[Li,Ri]这些点染成白色。请输出每个操作执行后剩余黑色点的个数。

解题过程:

1.裸的线段树额。不过要打个lazy_tag。

2.其实可以不用打lazy_tag,因为没有删除操作,那么如果当前区间已经被完全覆盖过了,那么就可以直接return了。速度比lazy_tag版本的快一半。。(好吧其实是懒,连懒人标记都懒得写了。)

二模 (6) day1的更多相关文章

  1. 二模 (16) day1&day2

    第一题:题目大意: 数列a[0]=a[1]=1, a[n]=a[n-2]*a[n-1]*n,求a[n]的因子个数 mod 1000000007.  n<=1000000 解题过程: 1.递推式还 ...

  2. 二模13day1解题报告

    二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...

  3. 二模 (8) day2

    第一题: 题目描述: 有 n 个炸弹,有些炸弹牵了一根单向引线(也就是说引线只有在这一端能被炸弹点燃),只要引爆了这个炸弹,用引线连接的下一个炸弹也会爆炸.每个炸弹还有个得分,当这个炸弹被引爆后就能得 ...

  4. 二模 (12) day1

    第一题: 题目大意: 求由N个1,M个0组成的排列的个数,要求在排列的任意一个前缀中,1的个数不少于0的个数.N,M<=5000. 解题过程: 1.看到N,M的范围就明确肯定不会是dp,因为起码 ...

  5. 二模 (3) day1

    第一题: 题目描述: 一个数列定义如下:f(1) = 1,f(2) = 1,f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.给定 A,B 和 n 的值,要求计算 ...

  6. 二模 (15)day1

    第一题: 题目大意: 有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个. 解题过程: 1.这题是刘汝佳<<训练指南>>上的一道经 ...

  7. 二模 (13)day1

    第一题: 题目大意: N个发射站排成一排,求每个发射站左右第一个比它高的发射站. N<=1000000 解题过程: 1.前几天做poj的时候刚好在discuss里看到有一个神奇的东东叫单调栈,正 ...

  8. 二模 (11) day1

    第一题: 题目大意:用邻接矩阵给出一棵树(边权非负)上N个节点相互之间的最短路距离,求这棵树所有边权的和. 解题过程: 1.暂时还没想出来,待AC. 第二题: 题目大意:给出一些单词,然后建立Trie ...

  9. 二模 (9)day1

    第一题: 题目大意: 给出一个n位01串,要么不动它,要么把它删掉一个字符,要么插入一个字符(0或1),要么把一个1变成0,.使得有1的位置号的总和是n+1的倍数,或者是0. 解题过程: 1.直接枚举 ...

  10. 二模 (10)day1

    第一题: 题目描述: 一个阅览室每天都要接待大批读者.阅览室开门时间是0,关门时间是T.每位读者的到达时间都不一样,并且想要阅读的刊物不超过5本.每位读者心里对自己想看的刊物都有一个排位,到达之后他会 ...

随机推荐

  1. 专题实验 PGA

    PGA : 是完全为 server process 服务的, 在 server process 创建时被分配到, 在server process 终止时被释放. 而且是非共享的, 只独立服务于这个se ...

  2. 关于jQuery的小知识点

    jQuery 简介 jQuery 库可以通过一行简单的标记被添加到网页中. jQuery 库 - 特性 jQuery 是一个 JavaScript 函数库. jQuery 库包含以下特性: HTML ...

  3. maven Connection refused: connect

    现象: 本地可以访问错误提示中的地址.但使用maven无法下载jar包. 环境: 浏览器上网需要使用代理 解决方法: 设置成正常代理可以.具体方法可以下载一个代理工具.只要IE配置成能直接访问http ...

  4. DRUID连接池的实用 配置详解

    DRUID介绍 DRUID是阿里巴巴开源平台上一个数据库连接池实现,它结合了C3P0.DBCP.PROXOOL等DB池的优点,同时加入了日志监控,可以很好的监控DB池连接和SQL的执行情况,可以说是针 ...

  5. jquery获得option的值和对option进行操作 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-13 我要评论

    jquery获得option的值和对option进行操作 作者: 字体:[增加 减小] 类型:转载 时间:2013-12-13我要评论 本文为大家介绍下jquery获得option的值和对option ...

  6. python操作mongodb之四cp数据库

    from pymongo import MongoClient #连接数据库 client=MongoClient('192.168.30.252',27017) #获取现有数据库的名称 client ...

  7. ActionErrors 使用说明 struts1 validate 处理流程 详细教程(转)

    转自(http://blog.csdn.net/wyx100/article/details/8736445). struts1  处理流程是  jsp  -->  ActionForm 中的A ...

  8. ASP.NET Core身份识别

    Introduction to Identity 66 of 93 people found this helpful By Pranav Rastogi, Rick Anderson, Tom Dy ...

  9. 近期十大优秀jQuery插件推荐

    当有限的开发知识限制了设计进展,你无法为自己插上创新的翅膀时,jQuery可以扩展你的视野.本文将推荐从jQuery网站的Plugin频道中推选出的近期十款优秀jQuery插件. 1.jQuery U ...

  10. centos7 学习

    1.centos pid文件: 在Linux系统的目录/var/run下面一般我们都会看到很多的*.pid文件.而且往往新安装的程序在运行后也会在/var/run目录下面产生自己的pid文件.那么这些 ...