二模 (4) day1
第一题:
题目描述:
有一个无穷序列如下:110100100010000100000…请你找出这个无穷序列中指定位置上的数字
解题过程:
1.考虑到1的数目比0少的多,就从1的位置的规律开始分析。前几项1的位置是 1,2,4,7,11,16. 可以发现 An=An-1 + n-1 . 用点数列的知识可以求出通项公式。
An=n*(n-1)/2 + 1 。
如果位置k是1,那么有 k=x*(x-1)/2 +1 。 就变成一个解方程的题,只要判断根是不是正整数就好。
初始得分100;
第二题:
题目大意:求方程 a1x1 + b2x2 + b3x3 + .... bnxn 的正整数解。
解题过程:
1.其实就是一个无限背包问题。
初始得分100;
第三题:
题目大意:出个2行数,N个在上,M个在下,然后上下两行相同的数可以连线,每一条连线都必须和另外一条连线相交(也只能和一条),且两条线的相连的4个数不能全相同。
求最多的连线数。
解题过程:
1.两条线的dp,无非是用F[i][j]来表示状态。先预处理出每个数能和那些数连线。F[i][j]表示A序列前i个,B序列前j个数且A[i],B[j]都有人连线的最优解。
显然如果A[i]能和多个数相连,那么肯定会去和B中最位置靠近j且小于j的B[k]相连,B[j]也是同理。设A[i]和B[q],B[j]和A[p]相连,那么找p,q可以用二分查找。
那么可以得到状态转移方程:F[i][j]=max(F[r][s]+2),r<p && s<q。 max(F[r][s])可以在计算F[i][j]的时候更新得到,用一个g[][]保存。
那么方程就变成F[i][j]=F[p-1][q-1]+2;
2.另外来自YYL的方法:对于每一个i,j,可以预处理出相应的p,q。设F[i][j]对于的p为H1[i-1][j],q为H2[i][j-1],可以用递推处理出所有的H1,H2.
举个例子: 如果A[i]!=B[j],那么H2[i][j]=H2[i][j-1]。 如果A[i]==B[j],那么H2[i][j]=j;
初始得分100;
二模 (4) day1的更多相关文章
- 二模 (16) day1&day2
第一题:题目大意: 数列a[0]=a[1]=1, a[n]=a[n-2]*a[n-1]*n,求a[n]的因子个数 mod 1000000007. n<=1000000 解题过程: 1.递推式还 ...
- 二模13day1解题报告
二模13day1解题报告 T1.发射站(station) N个发射站,每个发射站有高度hi,发射信号强度vi,每个发射站的信号只会被左和右第一个比他高的收到.现在求收到信号最强的发射站. 我用了时间复 ...
- 二模 (8) day2
第一题: 题目描述: 有 n 个炸弹,有些炸弹牵了一根单向引线(也就是说引线只有在这一端能被炸弹点燃),只要引爆了这个炸弹,用引线连接的下一个炸弹也会爆炸.每个炸弹还有个得分,当这个炸弹被引爆后就能得 ...
- 二模 (12) day1
第一题: 题目大意: 求由N个1,M个0组成的排列的个数,要求在排列的任意一个前缀中,1的个数不少于0的个数.N,M<=5000. 解题过程: 1.看到N,M的范围就明确肯定不会是dp,因为起码 ...
- 二模 (3) day1
第一题: 题目描述: 一个数列定义如下:f(1) = 1,f(2) = 1,f(n) = (A * f(n - 1) + B * f(n - 2)) mod 7.给定 A,B 和 n 的值,要求计算 ...
- 二模 (15)day1
第一题: 题目大意: 有两个长度为N的序列A和B,在A和B中各任取一个数相加可以得到N2个和,求这N2个和中最小的N个. 解题过程: 1.这题是刘汝佳<<训练指南>>上的一道经 ...
- 二模 (13)day1
第一题: 题目大意: N个发射站排成一排,求每个发射站左右第一个比它高的发射站. N<=1000000 解题过程: 1.前几天做poj的时候刚好在discuss里看到有一个神奇的东东叫单调栈,正 ...
- 二模 (11) day1
第一题: 题目大意:用邻接矩阵给出一棵树(边权非负)上N个节点相互之间的最短路距离,求这棵树所有边权的和. 解题过程: 1.暂时还没想出来,待AC. 第二题: 题目大意:给出一些单词,然后建立Trie ...
- 二模 (9)day1
第一题: 题目大意: 给出一个n位01串,要么不动它,要么把它删掉一个字符,要么插入一个字符(0或1),要么把一个1变成0,.使得有1的位置号的总和是n+1的倍数,或者是0. 解题过程: 1.直接枚举 ...
- 二模 (10)day1
第一题: 题目描述: 一个阅览室每天都要接待大批读者.阅览室开门时间是0,关门时间是T.每位读者的到达时间都不一样,并且想要阅读的刊物不超过5本.每位读者心里对自己想看的刊物都有一个排位,到达之后他会 ...
随机推荐
- web设计经验<一> 提升移动设备响应式设计的8个建议
今天看到一些关于web设计的一些建议和设计经验,拿出来分享分享. 第一篇: 提升移动设备响应式设计的8个建议 一.直观性和易用性 在使用移动设备时,对于杂乱.复杂或者不直观的设计造成的混乱不佳的用户体 ...
- python利用xmlrpc方式对odoo数据表进行增删改查操作
# -*- encoding: utf-8 -*- import xmlrpclib #导入xmlrpc库,这个库是python的标准库. username ='admin' #用户登录名 pwd = ...
- Python的lambda表达式
使用lambda来创建匿名函数,而用def创建的方法是有名称的,除了从表面上的方法名不一样外,python lambda还有哪些和def不一样呢? 1 python lambda会创建一个函数对象,但 ...
- (一)MII/MDIO接口详解
本文主要分析MII/RMII/SMII,以及GMII/RGMII/SGMII接口的信号定义,及相关知识,同时本文也对RJ-45接口进行了总结,分析了在10/100模式下和1000M模式下的设计方法. ...
- 5.7 C和C++的关系
- iOS开发者帐号流程
http://ask.dcloud.net.cn/article/152 iOS证书(.p12)和描述文件(.mobileprovision)申请 5+App开发 Apple证书 iOS证书 iOS有 ...
- 使用Java编写一个简单的Web的监控系统cpu利用率,cpu温度,总内存大小
原文:http://www.jb51.net/article/75002.htm 这篇文章主要介绍了使用Java编写一个简单的Web的监控系统的例子,并且将重要信息转为XML通过网页前端显示,非常之实 ...
- [转]Android 使用Fragment界面向下跳转并一级级返回
1.首先贴上项目结构图: 2.先添加一个接口文件BackHandledInterface.java,定义一个setSelectedFragment方法用于设置当前加载的Fragment在栈顶,主界 ...
- NOI LINUX装机记
装了差不多一天啊!! 首先自己用虚拟光驱来运行,然后莫名其妙就炸了. 搞到最后刻了一个盘. 然后装完linux之后发现回不到windows7了. 网上找各种资料. 最后搞了个root,再启动的文件中加 ...
- jQuery与DOM相互转换
先执行一下代码 $(function () { var div=$("<div></div>"); console.log(div); }); (注意,di ...