离线赛
Tai_zong
这个作者很懒,什么都没留下…
展开
-
10.7离线赛
预分240 实分240一、S数 应得100 实得100题意:在[l,r]区间内求满足S(x*x)=S(x)^2的数的个数,S(x)=x各位数字和数据:对于80%,r∈[1,1e5] 对于100%,r∈[1,1e9],l<=r80%的只需要一个循环打过去就可以了。然后把表打出来,发现满足的x只由0123四个数字组成,按照这四个数字造数,共4^9=262144个,原创 2017-10-07 20:49:53 · 187 阅读 · 0 评论 -
2017 NOIP 提高组模拟赛(四)Day2(计蒜客)
一、鬼脚图 原题:计蒜客考试的时候先看错了题,很高兴,改了。 交了后错了,看了一下题,又看错了…… 然后两分钟改完,崩了……横线就是交换位置,在读入的时候把线两边得数交换一下就是最终序列。 最少横线数就是最终序列的逆序对个数。Code:#include<bits/stdc++.h>#define M 1000005using namespace std;int B[M],A[M],an原创 2017-10-16 20:47:57 · 457 阅读 · 0 评论 -
NOIP2013提高组Day1
一、转圈游戏 按照题意每个人往后m个,那就是(10^k*m+x)%n,然后用快速幂就可以了二、火柴排队 看起来很像鬼脚图,但是有点不一样,鬼脚图的上一层是固定的,但这里两层都可以动 注意到交换对于交换上面还是交换下面效果都是一样的,那么直交换下面就可以了 这样和鬼脚图就一模一样了,排序一下,重新定义一下就行了三、货车运输 我一档档写了过来 对于30分,和七夕是一样的,只要枚举每条边作为最原创 2017-10-23 22:24:51 · 280 阅读 · 0 评论 -
NOIP2012提高组Day2
NOIP2012Day2一、同余方程数据:对于100%,a、b∈[1,2e9]模板题,实在不行手推一下也行。二、借教室数据:对于 30%,n,m∈[1,1000] 对于 100%,n,m∈[1,1e6]30分暴力模拟就行。看完题想到的就是线段树,把区间最小值存下来就行了。当tree[1]<0(tree[1]就是1-n这段区间)时,就直接输出。这样写只有95分(如果服务器不快的话),线段树的常数太大原创 2017-10-23 10:36:22 · 296 阅读 · 0 评论 -
NOIP2012提高组Day1
NOIP2012Day1一、Vigenère 密码数据:密钥长度∈[1,100],密文长度∈[1,1000]很简单的一道题,只要对着推一下公式就行了。二、国王游戏数据: 对于 20%,n∈[1,10] 对于 60%,n∈[1,100],保证答案不超过 109 对于 100%,n∈[1,1,000]20%的暴力全排就行了答案要超long long,所以要高精度正解是贪心。对于一个数Num(i),原创 2017-10-20 10:45:28 · 323 阅读 · 0 评论 -
NOIP2014提高组Day2
NOIP2014Day2一、无线网路发射器选址数据:对于100%,矩阵大小129*129(0-128),n∈[1,20],d∈[1,20]看完题后想到的是二维前缀和,看完数据后发现没有关系,暴力也可以过,直接129*129*n 就行了二、寻找到路数据:对于100%,n∈[0,1e4],m∈[0,2e5]看完题后想暴力,不是很会。但是看完条件后,发现条件1只要从终点反向走一遍,就可以把所有到不了的点全原创 2017-10-19 09:23:53 · 245 阅读 · 0 评论 -
10.15离线赛
一、小X的质数 数据: 计蒜客原题就是筛一下素数,然后按照题意就行了。1e7以内有60多万个素数,直接n^2岂不是超时?素数相乘会很大,当大于R时break掉就行了。然后再一个前缀和维护一下就没了。Code:#include<bits/stdc++.h>using namespace std;int prm[665005],n,pc,cnt[10000005];bool Q[10000原创 2017-10-15 14:39:06 · 257 阅读 · 0 评论 -
NOIP2013提高组Day2
一、积木大赛数据:对于70%,n∈[1,1000] 对于 100%,n∈[1,100000]暴力就是从一个点不断往后刷。贪心的想法,每次都要刷较多的区间,那么注意到高的都比相邻的低的刷的次数多,只要记录A[i]-A[i-1]就行了(A[i]>A[i-1])二、花匠数据:对于 70%,n∈[1,1000],hi∈[1,1000] 对于 100%,n∈[1,1e5],hi∈[1,1e6]注意一点:序原创 2017-10-25 10:35:49 · 254 阅读 · 0 评论 -
NOIP2015提高组Day1
一、神奇的幻方数据:对于100%,n∈[1,39],且n必为奇数 模拟题。没什么好讲的。重点是,noip2017的提高组初赛是这道题……二、信息传递数据:对于60%,n∈[1,2500] 对于100%,n∈[1,200000]题目里给的序列可以变成一张图,根据题目意思在自己画一个有向图,发现就是求一个图上的环的长度。而且只有n条边,那么只有一个环。如果学了强联通,那么就是裸题了。但是不会,只能换原创 2017-10-26 19:29:25 · 538 阅读 · 0 评论 -
离线赛11.3
一、excellent数 数据:对于20%,n∈[1,6] 对于70%,n∈[1,1000] 对于100%,n∈[1,1e6]暴力显然只能过20%的。注意题目要求是两个都满足good数,那么枚举一维使其为good数后,再判定。枚举一下a的个数和b的的个数就行了。如果可以,只要再组合数就行了。组合数如果用公式求是n^2的,太慢了,可以用逆元求,这样是n log n二、数字分割 数据:对于80%原创 2017-11-03 18:29:59 · 257 阅读 · 0 评论 -
11.4离线赛
一、猴子除草数据:对于100%,n∈[1,1e5] 显然的二分。但是只有95分。后来发现如果m==1时,直接出就有问题了,要特判掉。二、机器人数据:对于40%,n∈[1,100],k∈[1,5] 对于90%,n∈[1,100000],k∈[1,16] 对于100%,n∈[1,100000],k∈[1,20]对于40%,可以直接全排所有颜色,然后再求一遍逆序对。如果进行亦凡预处理,在O(K)时间内原创 2017-11-04 16:19:55 · 392 阅读 · 0 评论 -
NOIP2011提高组Day2
NOIP2011提高组Day2一、计算系数数据:对于50%,a=b=1 对于100%,k∈[0,1000], n,m∈[0,k],且n+m=k,a,b∈[1,1e6]a=b=1时就是杨辉三角。k又很小,n^2即可a,b不为1时,可以打个表,发现a,b的次方就是所给的n,m,那就可以套个快速幂,再用上上面的那个杨辉三角就行。我不是这样写的,我打了个表去算,也就只是n^2的事。二、聪明的质检员对于原创 2017-10-18 09:20:49 · 368 阅读 · 0 评论 -
10.21离线赛
一、完美01正方形数据:对于100%,n、m∈[1,300]注意一点,题目问的是正方形,不是矩形。那么枚举一个左上角和正方形边长,这样才n^3,然后用二维前缀和判断,就可以过了。二、重温LIS数据:对于70%,n∈[1,1000] 对于100%,n∈[1,10^5],LIS的长度不超过1000快速求LIS的方法大家也都知道,这里就不介绍了。问题多了一个就是判断一个数是否在LIS上。肯定在很简单,如原创 2017-10-22 17:28:04 · 213 阅读 · 0 评论 -
10.8离线赛
一、弹钢琴数据: 对于70%,N∈[1,1000] 对于100%,N∈[1,1e9],K∈[1,50]排列组合的一道裸题。两种实现排列组合的方法:1、变为递推式计算。因为对于一个组合(aCb)=((a-1) C (b))+((a-1) C (b-1))。然后按照双重循环过去就好了。#include<bits/stdc++.h>#define Mod 100000000原创 2017-10-08 16:28:34 · 172 阅读 · 0 评论 -
10.3离线赛
预分:200 实分:175写书 应得:100 实得:100题意:计算1到n的数字出现个数数据:对于100%,n∈[1,1e9];小学奥数题,没有必要多想,一位数两位数三位数直接计算即可。LR棋盘 应得:40 实得:35题意:读入一个字符串,在串上有LR两种标记,L只能向左走,R只能向右走,每次只能走一个L或R,只能向没东西的格子走,问有多少种走法。最后对1e9+7取模数据:对于40原创 2017-10-04 08:40:58 · 261 阅读 · 0 评论 -
10.9离线赛
一、弹钢琴 数据:对于60%,n、m∈[1,5000] 对于100%,n、m∈[1,500000]对于60%,N*M的很好想,对于每个询问点,向前一直找梦想后一直找就行了。 然后可以想到其实对于这一块里所有答案都是一样的,那就可以预处理出来,把每一块的L、R存下来,放在两个数组里。询问时在R数组里二分查找。 再者,可以用并查集,把一块里其他点都指向第一个点,把这一块的L、R坐标放在第一个点上原创 2017-10-10 11:11:22 · 222 阅读 · 0 评论 -
10.10离线赛
一、字符连通块 数据:对于70%,n、m∈[1,100] 对于100%,n、m∈[1,1000]其实很简单,改变一个‘*’变成‘.’,那就会连通其上下左右四个点,那只要一开始判一下连通块,然后标记一下就行了。二、回文字符序列 数据:对于30%,n∈[1,20] 对于60%,n∈[1,100] 对于100%,n∈[1,2000]对于30%,可以二进制枚举,然后判选出来的点能否组成回文,这很简原创 2017-10-11 09:20:14 · 207 阅读 · 0 评论 -
10.4离线赛
NOIP2014提高组day1模拟 预分270 实分170生活大爆炸版石头剪刀布 应得100 实得100 题意:多了两种出法,输赢如下表 每个人的出法都有周期性,问n回合后的得分。数据:n∈[1,200]数据太小,一遍循环就可以过了,分数只需要打个表就行,代码很短联合权值 应得100 实得0题意:在一棵树上每个点有点权,边的长为一,求所有两点间距离为二的点对的点权乘积的和,和原创 2017-10-04 22:19:25 · 183 阅读 · 0 评论 -
10.6离线赛
预分230 实分180构造序列 应得100 实得100 题意:求满足相邻两个数AB,A<=B||A%B!=0的序列的个数,元素范围是[1,k],对1e9+7取模数据:对于80%,n∈[1,10],k∈[1,1000] 对于100%,n∈[1,10],k∈[1,100000]一看就是dp题,一层层推过来。如果按照题意直接写过来,那就是O(N * K * K),只能过80原创 2017-10-06 15:37:35 · 186 阅读 · 0 评论 -
NOIP2016提高组Day1
一、玩具谜题数据: 其实数据范围和切分没有用的……直接模拟就能过的说……二、天天爱跑步 数据: 我考试时一档档写过来,原来以为有80分,但是只有65,是链的15分写错了,后来发现想得太简单了。Si==Ti和Wj==0只要循环判断就行。链推一下也简单。正解之前先说Si==1和Ti==1的情况Si==1: 此时相当于有很多条链挂在了根节点上往下,这样就用前缀和(树上前缀和)就行了。具体就是把末端原创 2017-10-29 21:39:20 · 439 阅读 · 0 评论 -
10.12离线赛
一、神经网络 数据:对于50%的数据,n∈[1,100] 对于100%的数据,n∈[1,200]很简单的一道题,但是只看题目会有点误解。题目中说神经若处于兴奋状态,下一秒向后发消息。我理解成这个要按照时间来,用完后就有成平静态。这样的话U[i]就多减了,而且有问题,只有20分。 实际上是一个点的Ci要把所有他的输入的Cj全部算出来才行。这样就有两种方法: 1、按照拓扑序,一层一层算过来 2原创 2017-10-12 21:19:42 · 247 阅读 · 1 评论 -
NOIP2016提高组Day2
一、组合数问题数据: 数据也没有用……因为所有询问中k的值是一样的,直接预处理组合数。处理时一直模k,这样求出来的就是这个数模k的余数。等于0的就是k的倍数。然后前缀和一下就行了。二、蚯蚓数据: 当m==0时就是排从大到小排序输出前60分按照题目模拟,在加上优先级队列或者手打堆就能过了。基本上就是每次弹出最大值,然后拆分,再放回去。但是显然log n 太慢了,能不能快一点?注意到拆分的时候,每次原创 2017-10-30 18:18:13 · 409 阅读 · 0 评论 -
11.5离线赛
一、放数字游戏数据:对于70%,n∈[1,2000]; 对于100%,n∈[1,200000],Ai∈[0,108];没想到第一题这么难,推了好久的公式。先设dp[i]表示前i个数的所有方案的和。当前加入当前有x个数,放一个数a进去,可以放在左边或右边。这样就有两个dp[i-1]。再计算a和相邻数的乘积。手算一下发现有一个规律:A[0] * 2+A[1] * 2+A[2] * 4+A[3] * 8原创 2017-11-05 19:52:25 · 258 阅读 · 0 评论