看到Day 2的题真的想打死zay了,忒难了QwQ~ T1 江城唱晚 这明显是个求方案数的计数问题,一般的套路是DP和组合数学. 正如题目中所说,这个题是一个 math 题.      ----zay不会的 math 题让我们做?QwQ DP已经优化到了尽头,现在我们考虑组合数学! zhx:这应该是个小学奥数题! 恩,这其实就是个经典的组合数问题啦. 首先我们以数学的来思考这个题: 我们有n个位置来摆放m盆花,还要保证每盆花之间至少有一个空位置.如果我们单单去刻意拆空位置的话,我们会发现这很难实…
这次是zay神仙给我们出的NOIP模拟题,不得不说好难啊QwQ,又倒数了~ T1 大美江湖 这个题是一个简单的模拟题.   ----zay 唯一的坑点就是打怪的时候计算向上取整时,如果用ceil函数一定要先转化成double类型(话说我就这么掉坑里了?QwQ) 测试点 1: 0 次询问,所以直接freopen一下输出文件即可得分.期望得分 10 分. 测试点 4.5: 由于保证人物不移动,而且不捡拾出生点的物资也不在出生点打怪,所以攻击 防御一定全部为初始值,耗血一定为 0 ,直接输出 q 行数…
contesthunter暑假NOIP模拟赛#1题解: 第一题:杯具大派送 水题.枚举A,B的公约数即可. #include <algorithm> #include <cmath> #include <iostream> using namespace std; #define MAXN 100010 struct node { int a,b,c; }ans[MAXN]; int main() { int R, G; scanf("%d%d",&…
这一次是交流测试?边交流边测试(滑稽 15数码问题 大家应该都玩过这个15数码的游戏吧,就在桌面小具库那里面哦. 一看到这个题就知道要GG,本着能骗点分的原则输出了 t 个无解,本来以为要爆零,没想到这个题数据是真的水,全输出无解能骗到40分,某些大佬输出样例了又骗到了20分 QwQ~: 本题对应着洛谷的UVA10181 15-Puzzle Problem ,省选难度,果然不简单QwQ~,_rqy 讲了一番,听得糊里糊涂. 这个题正解是搜索(貌似是废话,都给了15s的时间了),但是还是需要一些剪…
这一次是交流测试?边交流边测试(滑稽 极值问题 乍一看这是一道数学题,因为1e9的数据让我暴力的心退却. 数学又不好,不会化简式子嘞,咋办? 不怕,咱会打表找规律.(考场上真的是打表找出了规律,打表打法好!!) 这里就不带着大家一起来打表了,我们是来正正经经的推式子滴. So,这道题就是求斐波那契数列的大水题啦. water_lift:其实这道题数据还是出水了,求斐波那契数列的时候完全可以卡到用矩阵加速. 我们:……(心里一万只草泥马跑过) 代码如下哦: #include<iostream>…
这一次是交流测试?边交流边测试(滑稽 挖地雷 这个题是一个递推问题. 首先我们看第一个格子,因为它只影响了它的上面和右上面这两个地方是否有雷. 我们可以分3种情况讨论: 1. 第一个格子的数字是2: 2. 第一个格子的数字是1: 3. 第一个格子的数字是0: 显然对于第1种情况和第3种情况,我们可以确定前两个空的埋雷情况: 第1种情况就是前两个空都埋雷了,第3种情况就是钱两个空都没有埋雷: 第二种情况我们需要再往下细分:第一个空埋雷,第二个空不埋雷:第一个空不埋雷,第二个空埋雷: 我们根据样例来…
带着爆0的心态考的试,没想到整了个假rk2 (炸鱼大佬wtz忒强了OTZ T1 景区路线规划 这题对刚学完概率期望的我来说简直水爆了好吗.. 因为存在时间限制,不好跑高斯消元,就直接跑dp就完了. 令i为当前所在景点,j为已过时间, f[i][j]=∑f[u][j-t[k]-c[i]]/out,(u与i联通,k为u,i,之间边的编号) 因为每次在合法的景点中做选择,所以out并不是u的出度,而是u可选的合法景点,每次要遍历一遍求得. code: 1 #include<bits/stdc++.h>…
考试的一道附加题~ 一看题目描述:把区间[l,r]里每个数异或上x,求区间[l,r]里所有数的异或和,这明显的要用数据结构或RMQ吧. 恩,所以正解就是线段树啦,至于树状数组行与否,不知道~ water_lift:这不是sb题嘛?线段树板子题都不会?把加法操作改成异或操作不就好啦? 其实好像真的是这样的,将加法操作改成了乘法操作: 然后你会发现自己只得了20分的暴力分,没错!相当于没写线段树! 因为线段树区间修改需要用到一个非常重要的东西: 懒标记 为什么要用到这个,直接暴力递归不好吗? 问得好…
大眼一看最下面的题意解释的话,发现这和洛谷P1310表达式的值挺像的,大概都是给定一些运算符号,让最后的表达式为true的概率,为false的概率啥的QwQ~: 然后这个题嘛?就是在所有的运算符中提溜出一个作为最后一次运算的运算符,然后我们去算这个运算符左边的那一堆式子,然后再算右边那一堆式子,最后再算一下最后一个运算符对应的运算就好啦! 那么怎么算这个运算符左边的式子和右边的式子呢?我们再从左边的式子中找出一个运算符最为最后一次运算的运算符,然后算它左边的式子,算它右边的式子…… 我们发现这就…
看到这个题之后,一个很暴力很直接的想法就是贴上题目中的代码然后交上去走人,但是很显然这是会TLE+MLE的,想想谁会这么傻把主要代码给你QwQ~: 其实这段代码是想告诉你一件事:用序列中的大数减去小数,直到序列中所有的数一样为止! 这就意味着最后的答案一定是某个数乘以 n! 证明: n=2的情况 想一想n=2的情况.这时这段代码的任务就是:用两个数中较大的数减去较小的数,一直到两数相等为止. 这不就是更相减损术吗! 代码如下: #include<iostream> #include<cs…