Noip模拟 Day6.13 By LD T1】的更多相关文章

一.哲哲回家 出题人的解答: 可以将其转化成最短路模型. 这个地方转车怎么转移有点困难,有两种方法: 1.我们可以再把每一个点拆成M个点,我们用F[i,j]表示从1号点到i这个点并且坐在j路车上的最少费用,对于同一条线路的相邻两个点,我们连一条权值为Rj的边,对于不在同一条     线路的两个点,连一条Rj+Tk的边,最后的答案就是min{f[n,i]}(1≤i≤m); 2.我们定义f[i]为在点i处下车的最少费用,那么对于同一条路线上的点两两连边,费用为:经过的边数*Rj+Tk:可以发现Pi较…
考得还算可以,T3还有提升空间(没看清题&&样例没过 拿了4分). 期望得分:80+40+0=120 实际得分:80+85+4=169 一脸黑线.....是数据比较水的原因,T2分都比较高 反正先把暴力分拿满就对了. T1 矩阵游戏 水题吗?我觉得不是,n,m 1e9! 23333不过好像沿用二营长的思路也可以过,总而言之是我太菜了,菜是原罪嘛. 首先易推出式子 ans=ΣH[i]*ΣL[j]*(m*(i-1)+j) (1<=i<=n,1<=j<=m) 考虑展开化简…
今天的考试说实话T1很简单没A,我是傻X.T2T3难得一批,但是暴力的分还是拿了! 总结一下就是:骗分过样例,暴力出奇迹!只要瞎搞就行了! 话说现在终于不像之前那么傻了,终于知道打暴力了,因为之前暴力不会打,所以总排行榜我底的一批,包括之前还有一场两个CE,直接奠定了我第二机房的基础,(下一轮再努力进第一机房吧!),我在这里也祝贺那些顺利升入第一机房的同学(我rp++)我也会努力的! T1其实水的一批,但是我数学好并没有什么卵用,还是打的n*n的暴力,考试之后就想到了横行和数列的离线分治算法!…
还没改完题,先留个坑. 放一下AC了的代码,其他东西之后说… 改完了 快下课了先扔代码 跑了跑了 思路慢慢写 来补完了[x 刚刚才发现自己打错了标题 这次考试挺爆炸的XD除了T3老老实实打暴力拿了52分,T1T2都爆了个位数 因为我T1T2,这次没有打暴力… T1想到了80分的思路,快乐打炸.T2想到了循环节一类的处理,然后也爆炸.之后发现其实有人和我的写法是一样的,但是他们最低拿了40分. 我还不如老老实实打暴力呢我这个只会暴力骗分与正解以及高分解法无缘的选手@#……¥#%&@@… 不知道自己…
期望得分:100+0+100=200 实际得分:100+5+100=205 T1 空间卡到30M.. n<=2.5*1e7 若x是整除区间[1,n]每个数的最小的数,那么对[1,n]每个数分解质因数, ai=2^x*3^y*5^z…… x=2^max(x) * 3^max(y) * 5^max(z) * …… max(x)=floor (logx n) 只有5000以内的素数的指数才会>=2,所以500之后的素数打个表 代码13M,不传了 T2 bzoj 1567  Blue Mary的战役地…
T1矩阵游戏 数学题.首先这一列这一行先乘还是后乘对最后答案没有影响.a[i][j]表示矩阵中原始的值,h[i]表示i行的累乘,l[i]表示i列的累乘.易得ans=Σa[i][j]*h[i]*l[i] 化简: ans= Σa[i][j]*h[i]*l[j]=Σh[i]*Σa[i][j]*l[j] a[i][j]为矩阵的初始值,公差为1的等差数列 以j==3为例 Σa[i][j]*l[j]=a[i][1]*l[1]+a[i][2]*l[2]+a[i][3]*l[3]               …
矩阵游戏 考试时思路一度和正解一样,考试到最后还是打了80分思路,结果80分打炸了只得了40分暴力分 题解 算出来第一列的总值,每次通过加每两列之间的差值得出下一列的总值 算第一列我们只需要让当前点*行增倍的数量就行了 for(ll i=1;i<=n;i++){ nowlie=(nowlie+elephant(i,1)*hang[i])%mod; sum=(sum+hang[i]); } 算其他列 nowlie=(nowlie+sum)%mod; 可能这一列会加倍只需乘上就行了 ans=(ans…
第一题:贪吃蛇(snake) 本题其实就是判断一个有向图中有没有环,做一次拓扑排序就可以了,如果所有点都入队了,就表示没有环,否则就有环.或者就是dfs一次,每个点只需要被访问一次,这样也是O(n)的. #include<algorithm> #include<iostream> #include<cstring> #include<cstdlib> #include<cstdio> #include<cmath> using nam…
NOIP模拟29(B) T1爬山 简单题,赛时找到了$O(1)$查询的规律于是切了. 从倍增LCA那里借鉴了一点东西:先将a.b抬到同一高度,然后再一起往上爬.所用的步数$×2$就是了. 抬升到同一高度的过程中,如果高度不是d的整数倍,则必定有一步没有走满d个高度. 如果剩下的步数为偶数,则直接累计答案,可以证明没有更优的情况(虽然我懒并没有证明但我觉得这挺显然的啊……) 如果剩下的步数为奇数,考虑把原来没有走满的那一步走满,然后把多余的那一步补到下降中,也可以证明没有更优的情况.(显然……于是…
5.22考试总结(NOIP模拟1) 改题记录 T1 序列 题解 暴力思路很好想,分数也很好想\(QAQ\) (反正我只拿了5pts) 正解的话: 先用欧拉筛把1-n的素数筛出来 void get_Prime() { for(int i=2;i<=M;i++) { if(!b[i]) pri[++tot]=i; for(int j=1;j<=tot&&i*pri[j]<=M;j++) { b[i*pri[j]]=true; if(!(i%pri[j])) break; }…