【NOIP2017练习】溢出(模拟)】的更多相关文章

5196. [NOIP2017提高组模拟7.3]B Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description…
5197. [NOIP2017提高组模拟7.3]C Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description…
5195. [NOIP2017提高组模拟7.3]A Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description…
5184. [NOIP2017提高组模拟6.29]Gift (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description…
5185. [NOIP2017提高组模拟6.30]tty's sequence (Standard IO) Time Limits: 1000 ms  Memory Limits: 262144 KB  Detailed Limits   Goto ProblemSet Description…
NOIP2017提高组 模拟赛15(总结) 第一题 讨厌整除的小明 [题目描述] 小明作为一个数学迷,总会出于数字的一些性质喜欢上某个数字,然而当他喜欢数字k的时候,却十分讨厌那些能够整除k而比k小的数,认为那些数会分解数字k从而破坏掉k的美感-- 有一天,他想:如果所有人都和自己一样,那么是不是喜欢两个含有倍数关系的不同数字的人就不能做朋友了?于是他想,至少用多少个集合,才能包括1到n的所有n个整数,使得所有存在倍数关系的两个不同数字在不同的集合里面? 小明脑子不好使,于是把问题交给了你. […
NOIP2017提高组 模拟赛13(总结) 第一题 函数 [题目描述] [输入格式] 三个整数. 1≤t<10^9+7,2≤l≤r≤5*10^6 [输出格式] 一个整数. [输出样例] 2 2 4 [输出样例] 19 [解题思路] 证明:对于n个人,分解成质因数,按质数个人分为一组(从小到大). 例如:30可以分成2 * 3 * 5,那么一开始2人为一组,共有15组.再分成3人为一组,然后有5组.再分成5人一组,有1组. 为什么这是最优的? a,b是n的质因数 设\(\frac{n}{ab}=x…
NOIP2017提高组模拟赛 10 (总结) 第一题 机密信息 FJ有个很奇怪的习惯,他把他所有的机密信息都存放在一个叫机密盘的磁盘分区里,然而这个机密盘中却没有一个文件,那他是怎么存放信息呢?聪明的你一定想到了,FJ的信息都是以文件夹名称的形式保存的.FJ给机密盘中的每一个文件夹都编了号,而FJ的机密信息是由S文件夹转到T文件夹的过程中必须经过的文件夹名称组合而成的,由于FJ的磁盘很慢,打开每个文件夹所耗费的时间等于该文件夹内下一级文件夹的数量.这次的任务是,给出每个文件夹的编号.名称以及它的…
NOIP2017提高组模拟赛 8(总结) 第一题 路径 在二维坐标平面里有N个整数点,Bessie要访问这N个点.刚开始Bessie在点(0,0)处. 每一步,Bessie可以走到上.下.左.右四个点.即假设Bessie当前所在点的坐标是(x,y),那么它下一步可以移动到(x,y+1), (x,y-1), (x+1,y), (x-1,y)之一. Bessie目标是找到一个移动序列,满足下面的条件: 1.从点(0,0)出发. 2.对于给定的那N个点,每个点至少被访问一次. 3.可以选择那N个给定点…
NOIP2017提高组模拟赛 9 (总结) 第一题 星星 天空中有N(1≤N≤400)颗星,每颗星有一个唯一的坐标(x,y),(1≤x,y ≤N).请计算可以覆盖至少K(1≤K≤N)颗星的矩形的最小面积.矩形的边必须平行于X轴或Y轴,长度必须为正整数.星如果在矩形的边上,也认为它是属于矩形内的. 思路:枚举矩形左上角的x,以及在x轴上的长度(矩形的长),然后单调的往下扫. #include<cstdio> #include<algorithm> #include<cmath&…
NOIP2017提高组模拟赛 7(总结) 第一题 斯诺克 考虑这样一个斯诺克球台,它只有四个袋口,分别在四个角上(如下图所示).我们把所有桌子边界上的整数点作为击球点(除了4个袋口),在每个击球点我们可以以45度角击球. 每一个击球点你都可以向两个方向击球,例如像下图所示. 从S点击球有两种路线.提供桌子的尺寸,你的任务是计算出有多少种不同的击球方式使得球能入袋.球可视为质点,且无任何阻力,反弹时无能量损失. 一个简单的证明:当一个球的运动轨迹形成一个环时,那么它必定不会到达四个角.所以对于从一…
NOIP2017提高组模拟赛5 (总结) 第一题 最远 奶牛们想建立一个新的城市.它们想建立一条长度为N (1 <= N <= 1,000,000)的 主线大街,然后建立K条 (2 <= K <= 50,000)小街, 每条小街的尽头有一间房子(小街的其它位置没有房子).每条小街在主线大街的P_i 处分支,(0 <= P_i <= N) , 小街的长度是 L_i (1 <= L_i <= 1,000,000).FJ想知道最远的两个房子之间的距离是多少. 其实…
NOIP2017提高组模拟赛4 (总结) 第一题 约数 设K是一个正整数,设X是K的约数,且X不等于1也不等于K. 加了X后,K的值就变大了,你可以重复上面的步骤.例如K= 4,我们可以用上面的规则产生所有的非素数. 可以通过5次变化得到. 24: 4->6->8->12->18->24. 现在给你两个整数N 和 M, 求最少需要多少次变化才能到从 N 变到 M. 如果没法从N变到M,输出-1. 这道题就是很简单的bfs,可以观察到n变化到m是近似成倍增长的.其实从最小到最大…
先了解一下Java堆: 关于Java内存区域的分配,可以查看Java运行时数据区域一篇文章. Java堆是虚拟机内存管理中最大的一块区域,该区域是线程共享的,某Java进程中所有的线程都可以访问该区域中的数据.Java堆中大部分区域是存放的实例对象,就是我们常说的Java面向对象编程中的对象.比如我创建了一个类,要通过这个类的构造函数new一个对象,new出来的这个对象就是存放在Java堆上.根据对象产生时间和引用时间的长短,可以细分为新生代和老年代. 通过-Xms和-Xmx参数控制虚拟机启动时…
果然我还是最菜的==不接受反驳 (先考了day2喵喵喵) Day2 T1:奶酪 期望得分:100分 实际得分:100分 考察:并查集 思路:这题其实之前做过了==.思路还是比较清晰的,读入时预处理出可以“通天下地”的奶酪,之后n²枚举所有的奶酪关系,可以互达的就连到一个并查集中.互达怎么判断?即使是空间也没关系,将两个奶酪的球心距离与二倍半径比较即可.之前的题解 Code //15:31 #include<cstdio> #include<algorithm> #include&l…
在JVM虚拟机规范中,Java虚拟机运行时数据区域除了程序计数器(Program Counter Register)外都有可能出现OutOfMemoryError的情况,使用Hotspot虚拟机简单的模拟堆栈内存溢出的场景,方便快速定位是什么区域的内存溢出. 堆 通过VM参数设置Java堆的大小,避免堆可扩展内存(设定-Xms和Xmx一样可避免堆自动扩展): 通过设定-XX:+HeapDumpOnOutOf-MemoryError可以让虚拟机在出现内存溢出异常的时候Dump出当前的内存堆转储快照…
火山喷发 火山喷发对所有附近的生物具有毁灭性的影响.在本题中,我们希望用数值来模拟这一过程. 在环境里有 n 个生物分别具有 A​1​​,A​2​​,⋯,A​n​​点生命值,一次火山喷发总计 MM 轮,每轮造成 11 点伤害,等概率地分给所有存活的生物,即如果目前有 K 个活着的生物,每个生物受到这点伤害的概率是 1/K​​.如果一个生物的生命值减为 0,它会立即死去,此后都不会再占用受到伤害的概率.如果没有生物存活,那么将没有生物会受到伤害. 现在你的任务是,给定 n,M 和全部生物的生命值,…
再写一道大模拟题. 由于是限时写的,相当于考场代码,乱的一批. 题目链接:P3952 时间复杂度 先记几个教训: 字符串形式的数字比较大小老老实实写函数,字典序都搞错几次了 栈空的时候不但pop()会RE,top()访问栈顶也会RE 数字以字符形式读入要考虑位数超过一位 思路: 1.我用的是在线做法. 2.使用结构体存储一个循环体,包括变量名.起始与结束.是否与n有关.是否能够进入(这一点麻烦了,在栈里推入是否与n有关以及是否能够进入就行了) 3.使用一个变量存储当前进入的层数(只记含n的),当…
传送门 发现这题选或不选对状态的优劣程度不会产生影响,如果已经确定了两个数a和b,那么最优的首项和公比也都是唯一确定的, 与对于后面的数x,加进去也好不加进去也好,首项和公比依旧是原来的 于是我们用尺取算法,用两个指针来扫一遍, 如果只有一个数且下一个数能被整除,就加进去,然后确定首项和公比 如果只有一个数且下一个数不能整除,两个指针直接指向下一个数 如果有多个数且下一个数满足公式,就加进来 如果有多个数且下一个数不满足公式,两个指针直接指向下一个数 这样对于最优解,一定是可以找到的 顺便说下最…
传送门 很水的题目啦QAQ #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<set> #include<queue> #include<vector> #define INF 0x7f7f7f7f #define pii pa…
传送门 这题可以用线段树来维护 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<set> #include<queue> #include<vector> #define INF 0x7f7f7f7f #define pii…
传送门 用hash,因为map的复杂度可能在这题中因为多一个log卡掉,但是hash不会 可能因为这个生成的随机数有循环的情况,不是完全均匀的 而且这题hash表的长度也可以开的很大 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<set> #inc…
传送门 这题有点坑啊 设A为两边颜色不同的角,B为两边颜色相同的角 那么考虑三种三角形:异色,同色,其他 对于任何一个异色三角形,一定会有三个颜色不同的角, 对于任何一个同色三角形,一定会有零个颜色不同的角, 对于任何一个其他三角形,一个会有两个颜色不同的角, 那么A一定等于异色三角形数目*3+其他三角形数目*2 对于任何一个异色三角形,一定会有零个颜色相同的角, 对于任何一个同色三角形,一定会有三个颜色相同的角, 对于任何一个其他三角形,一个会有一个颜色相同的角, 那么B一定等于同色三角形数目…
传送门 简单几何+逆序对 发现当两条直线甲乙与平板的交点在上面甲在较左的位置,那么下面甲在较右的位置就可以相交 然后把上面的位置排下序,下面离散化+树状数组即可 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<set> #include<que…
传送门 dp,注意边界 #include<cstdio> #include<cstdlib> #include<algorithm> #include<cstring> #include<cmath> #include<map> #include<set> #include<queue> #include<vector> #define INF 0x7f7f7f7f #define pii pair…
T1:小X的质数 小 X 是一位热爱数学的男孩子,在茫茫的数字中,他对质数更有一种独特的情感.小 X 认为,质数是一切自然数起源的地方. 在小 X 的认知里,质数是除了本身和 1 以外,没有其他因数的数字. 但由于小 X 对质数的热爱超乎寻常,所以小 X 同样喜欢那些虽然不是质数,但却是由两个质数相乘得来的数. 于是,我们定义,一个数是小 X 喜欢的数,当且仅当其是一个质数,或是两个质数的乘积. 而现在,小 X 想要知道,在 L 到 R 之间,有多少数是他喜欢的数呢? 输入格式 第一行输入一个正…
树上路径统计,点分治解决. 统计一段区间,naive地用了set解决,这样的复杂度是O(nlog^2n)的 考场代码出了个问题,统计答案时找到了之前的最优答案,但是没有加上新的一段,导致60分 #include<iostream> #include<cstdio> #include<set> using namespace std; inline int rd(){ ,f=;char c; :; +c-',c=getchar(); return ret*f; } ; s…
题目链接: https://jzoj.net/senior/#main/show/5178 题目: 题解: 我们定义$f[pos]$表示以位置pos为后缀的字符串对答案的贡献,答案就是$\sum_{i=1}^{n} f[i]$ 考虑怎么得到f数组,我们有$f[i]=f[nxt[i]]+[i是偶数]$ 其实蛮显然的,$f[i]$和$f[nxt[i]]$除了多出前缀i这个贡献没什么区别 #include<algorithm> #include<cstring> #include<…