P3941 入阵曲】的更多相关文章

[luogu]P3941 入阵曲 题目描述 小 F 很喜欢数学,但是到了高中以后数学总是考不好. 有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的 时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以 解决的问题,被一个又一个算法轻松解决. 小 F 当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢. 一年过去了,想想都还有点恍惚. 他至今还能记得,某天晚上听着入阵曲,激动地睡不着觉,写题写到鸡鸣时分都兴奋不 已.也许,这就是热血吧.…
题目传送门 这道题也是今年湖南集训队Day8的第一题,昨天洛谷的公开赛上又考了一遍,来发个记录(其实是因为五月天,另外两道题分别是将军令和星空,出这次题目的人肯定同为五迷(✪㉨✪)) 话不多说.先理解下题意,给定一个n*m的矩阵,要求出能被k整除的子矩阵个数. 题意很简单,但是矩阵这方面的题目一直是我最大的软肋,所以昨天做的时候就直接交了个O( n^2 m^2 )的暴力,然后运气还可以,水了60分(据说暴力只有55?)然后在网上看到某集训队大犇的解题报告,搞懂了这题的正解做法. 那位大犇的做法是…
\(\color{#0066ff}{ 题目描述 }\) 小 F 很喜欢数学,但是到了高中以后数学总是考不好. 有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的 时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以 解决的问题,被一个又一个算法轻松解决. 小 F 当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢. 一年过去了,想想都还有点恍惚. 他至今还能记得,某天晚上听着入阵曲,激动地睡不着觉,写题写到鸡鸣时分都兴奋不 已.也许,这就…
题目传送门 题目大意:给你一个\(n\)*\(m\)的矩阵,每个位置都有一个数,求有多少不同的子矩阵使得矩阵内所有数的和是\(k\)的倍数. 数据范围给的非常友好233,期望得到的暴力分:75分.前12个点可以用\(O(n^4)\)算法水过,对于\(<=400\)的有特殊性质2的数据,我们还可以尝试苟一下,开始用了一个什么鬼方法(?),其实我们只要枚举所有可能的矩形面积判断一下是否满足条件再加上这种矩形面积的所有可能数就行啦. #include<cstdio> #include<a…
题目背景 丹青千秋酿,一醉解愁肠. 无悔少年枉,只愿壮志狂. 入阵曲 题解在代码里. #include<iostream> #include<cstdio> #include<cstring> using namespace std; long long a[1000][1000],sum[1000][1000],ans=0,tot,n,m,k,flag[1100000],b[1110000]; int main() { cin>>n>>m>…
题目背景 pdf题面和大样例链接:http://pan.baidu.com/s/1cawM7c 密码:xgxv 丹青千秋酿,一醉解愁肠. 无悔少年枉,只愿壮志狂. 题目描述 小 F 很喜欢数学,但是到了高中以后数学总是考不好. 有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的 时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以 解决的问题,被一个又一个算法轻松解决. 小 F 当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢. 一年过…
题目传送门 题目背景 丹青千秋酿,一醉解愁肠.无悔少年枉,只愿壮志狂. 题目描述 小$F$很喜欢数学,但是到了高中以后数学总是考不好.有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以解决的问题,被一个又一个算法轻松解决.小$F$当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢.一年过去了,想想都还有点恍惚.他至今还能记得,某天晚上听着入阵曲,激动地睡不着觉,写题写到鸡鸣时分都兴奋不已…
嘟嘟嘟 这道题我觉得跟最大子矩阵那道题非常像,都是O(n4)二维前缀和暴力很好想,O(n3)正解需要点转化. O(n4)暴力就不说啦,二维前缀和,枚举所有矩形,应该能得55分. O(n3)需要用到降维的思想.先考虑这么个问题:对于一个序列,求区间和是k的倍数的区间个数.有点想法的暴力就是前缀和预处理,然后O(n2)枚举.那么能不能不枚举呢?观察会发现,任意两个 mod k余数相同的前缀和相减得到的区间,都能被k整除.有了这一点,这道题就变成求余数相同的前缀有多少对了.那么开一个数组dp[i]记录…
题目大意 洛谷链接 给出一个矩阵和 \(K\) ,问有多少子矩阵中的元素和能整除 \(K\). 数据范围 \(2\leq n,m\leq 400\),\(0\leq K\leq 10^6\). 思路 暴力枚举 \(O(n^6)\),二维前缀和优化 \(O(n^4)\). 根据数据范围我们需要想出至少 \(O(n^3)\) 的方法.而枚举左上角或右下角的方法显然是不可取的,所以我们想怎么优化枚举矩阵的方法. 我们可以通过枚举上界和下界,从而规定矩阵的高度,从而得到许多等高矩阵.从而可以把其抽象为一…
题解 观察数据范围,可以 \(\mathcal O(n^2m^2)\) 暴力计算,而加上特殊性质,则可以骗到 \(75pts\) 正解: 我们发现,在一维情况下,\(\mod k\) 相同的前缀和相减,一定是 \(k\) 的倍数.那么我们就可以统计一个不同 \(\mod k\) 的值出现了几次,\(\mathcal O(n)\) 求解. 扩展到二维,做法是将一段连续的行合并成一行,ppt 上叫压行.再按一行的做法做,复杂度 \(\mathcal O(n^2m)\) 注意:记得开 long lon…
题目:P4930「FJ2014集训」采药人的路径 思路: 这篇不算题解,是让自己复习的,什么都没说清楚. 很久没有写点分治了,以前为了赶课件学的太急,板子都没打对就照着题解写题,导致学得很不扎实. 这道题差不多是在郭老师的指导下一点点凑出来的,还是没能自己完整写出一道题,惭愧. 这道题大意是:给出一棵边权为0/1的树,求满足以下条件的路径总数:0的个数等于1的个数,且路径上存在一点到路径两端也满足该条件. 这种求路径总数的题,可以想到用点分治. 把0看作-1,就可以转化为路径边权和为0. 如果没…
T1 入阵曲 前缀和维护可以得60分 f[x1][y1][x2][y2]=sum[x2][y2]-sum[x1-1][y2]-sum[x2][y1-1]+sum[x1-1][y1-1];  O(n4) 如果同一行的两个前缀和在模k意义下相等,那么他们之间的数的和一定是k的整数倍.把余数拿桶存起来,每次查询之前相同余数的有几个,直接加上.把一行拓展成许多行. 枚举矩阵的左右端点,中间的连续几列压成一列,(然后可以把纸旋转90°)就跟一行的一样了.复杂度O(n3) 需要注意的一点是初始化桶t[0]=…
丹青千秋酿,一醉解愁肠. 无悔少年枉,只愿壮志狂 题目 题目描述 小 F 很喜欢数学,但是到了高中以后数学总是考不好. 有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的 时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以 解决的问题,被一个又一个算法轻松解决. 小 F 当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢. 一年过去了,想想都还有点恍惚. 他至今还能记得,某天晚上听着入阵曲,激动地睡不着觉,写题写到鸡鸣时分都兴奋不 已.…
入阵曲 题解 应用了一种美妙移项思想, 我们先考虑在一维上的做法 维护前缀和$(sum[r]-sum[l-1])\%k==0$可以转化为 $sum[r]\% k==sum[l-1]\%k$开个桶维护一下即可 然后拓展到二维上 把两行之间所有行拍扁看作一维上的区间, 我们枚举两行和行之间所有列开个桶维护 $n^2 m$复杂度 for(ll i=1;i<=n;i++) for(ll j=1;j<=i;j++){ flag[0]=1; for(ll q=1;q<=m;q++){ t[q]=(s…
对于这次考试来说,总体考得还是不错的 就是有一个小问题,特判一定要判对,要不然和不判一样,甚至错了还会挂掉30分 还有一个就是时间分配问题,总是在前几个题上浪费太多时间,导致最后一个题完全没有时间思考 所以最后一个题我又成功的爆零了 下次冲第一,把分拿满 当然最重要的还是 关于这个考场上是想正解还是暴力的问题 我现在有了一个大概的思路,就是 不要浪费太多时间去想,一般保持在一个小时以内是可以的 当然这是在前10分钟已经把暴力思路弄出来的情况下(暴力程序可以先不着急打) 那下面就是正解时刻了 T1…
题面 ​ 话说题目前面的那首诗还挺有意境的啊哈哈. ​ 可能今天要把中文的标点都换成英文的了, 先熟悉一下吧... ​ 好了, 进入正题, 求一个矩阵内有多少个子矩阵满足这个子矩阵的和模k为零.看到矩阵和啊, 第一感觉就是前缀和数组,在这里便是二维前缀和, 有这样一个算式: \[ sum[i][j] = sum[i - 1][j] + sum[i][j - 1] - sum[i - 1][j - 1] \] ​ 这个算式是怎样推出来的呢, 请大家自行画图解决, 应该是很好理解的. ​ 二维前缀和…
namespace LanguageFeatures { public class ShoppingCart { public List<Product> Products { get; set; } } } 假设无法修改上面的类,这时可以使用扩展方法获得所需功能 namespace LanguageFeatures { public static class MyExtensionMethods { public static decimal TotalPrices(this Shoppin…
分析:其实很容易想到O(n^3m^3)的算法,枚举x1,x2,y1,y2,再统计一下和.求和可以用前缀和,能优化到O(n^2m^2),能得到60分.对于特殊性质的点,求一下a[i][j]与k的最小公倍数lcm,就可以推出来要选多少个点,乘法原理推一下就能解决了. 满分做法的思想是降维,先分析一下一维怎么做.问题要求满足(a[l] + a[l + 1] + ...... + a[r]) % k = 0的区间[l,r]有多少个.利用前缀和优化就是(sum[r] - sum[l - 1]) % k =…
https://www.zybuluo.com/ysner/note/1301562 题面 统计在给出的\(n*m\)矩阵中,有多少个不同的子矩形中的数字之和是\(k\)的倍数? 解析 切不掉这道题是我傻逼 显然预处理出每列的前缀和. 然后枚举矩形的上界和下界,统计下范围内哪些列余数相等就行. #include<iostream> #include<cstdio> #include<cstdlib> #include<cstring> #include<…
题目背景 pdf题面和大样例链接:http://pan.baidu.com/s/1cawM7c 密码:xgxv 丹青千秋酿,一醉解愁肠. 无悔少年枉,只愿壮志狂. 题目描述 小 F 很喜欢数学,但是到了高中以后数学总是考不好. 有一天,他在数学课上发起了呆:他想起了过去的一年.一年前,当他初识算法竞赛的 时候,觉得整个世界都焕然一新.这世界上怎么会有这么多奇妙的东西?曾经自己觉得难以 解决的问题,被一个又一个算法轻松解决. 小 F 当时暗自觉得,与自己的幼稚相比起来,还有好多要学习的呢. 一年过…
正解:单调栈/悬线法 解题报告: ummm这题我当初做的时候一点思路也没有只会暴力出奇迹:D(啊听说暴力好像能水过去呢,,, 然后当初是看的题解,然后学了下悬线法 然后就忘了:D 然后我现在看发现看不懂辽:D #论写题解的好处:D 所以赶紧来写个题解QAQ ummm悬线法这个玩意儿会单独写个学习笔记的到时候放链接QAQ所以这里不详解了 反正这题就相当于是个最大子矩阵的玩意儿?有点悬线法板子题的意思蛤? 那如果知道悬线法就可以直接过了,好了没了感觉没太多可说的QAQ 然而这题谢总是布置在单调栈专题…
快考试了,把我以前写过的题回顾一下.Noip2007 树网的核:floyd,推出性质,暴力.Noip2008 笨小猴:模拟Noip2008 火柴棒等式:枚举Noip2008 传纸条:棋盘dpNoip2008 双栈排序:将复杂条件转化为简单约束,二分图染色判断可行性,模拟.Noi2010 能量采集:常见套路,求:ΣΣgcd(i,j),设t = gcd(i,j),能算出gcd=t的点对有(n/t) * (m/t)个,然后利用容斥原理减去2t,3t,……,kt的,倒序枚举.Noip2009 潜伏者:模…
入阵曲 #include<iostream> #include<cstdio> #define maxn 401 #ifdef WIN32 #define PLL "%I64d" #else #define PLL "%lld" #endif using namespace std; int n,m,K,a[maxn][maxn],sum[maxn][maxn]; ; long long ans; int main(){ //freopen(…
Warning:这一篇极其中二,开了那个大会莫名有感而发. 模拟测试17那套题啊... 开的这个大会为什么弄得我退役感如此强烈... 早就想收藏了,还是记下来吧 <入阵曲> 丹青千秋酿, 一醉解愁肠. 无悔少年枉, 只愿壮志狂. 无悔.壮志. 吾辈当狂. <将军令> 历史/落在/赢家/之手 至少/我们/拥有/传说 谁说/败者/无法/不朽 拳头/只能/让人/低头 念头/却能/让人/抬头 抬头/去看/去爱/去追 你心中的梦 凭君莫话封侯事, 一将功成万骨枯. 醉卧沙场. 莫笑.功成.…
这次写的更惨了,T2暴力再次挂掉了. 先写了T1的75暴力,然后写了T2的70分暴力(挂成了25),T3啥也不会骗了12分.T3看完题一点思路没有,心态爆炸了,一直在观察数据,忽略的思考的重要性,以至于一点都没打出来,总的来说这次考试还是挺失败的. 入阵曲:写一个式子:$(sum[r]-sum[l-1])\equiv 0 (mod\ k)$ 那么我们$O(n^2)$枚举两行,再$O(m)$扫中间,会得到一个$sum$值,查询桶里相同的值,然后再把这个值插入桶中. 将军令:很简单的贪心,我又又又又…
这次.. 考场刚了T1T2两题的正解 然后T2A了,T1被毒瘤卡常 让skyh得了rank1,QMQ 话说这次考试体(r)验(p)极(yong)佳(jin) 也许是昨晚没玩狼人杀睡的比较好?(现场%苗东旭) T1 入阵曲 赞美RNB摆脱犯罪深渊(掌声走已) 正解是个桶,但是卡常了,n^3开longlong会当场被日成n^4 T2 将军令 菜狗又没想出贪心 大神们都说DP不可做? 考场上弄了个不知道对不对的dp 考试过程 不想看的跳过 仔细阅读了题面.凭君莫话封侯事,一将功成万骨枯. 等不及中二病…
最近状态有些不对劲,总是出现各种各样的小错误...... 这次可以说是很水的一套题(T3神仙题除外),T1就是一个优化的暴力,考场上打了一个n的四次方的程序,在距考试结束还有5分钟的时候猜想出来正解,但是我的手速并不能码完,即使还是尽力码完,但是交上去也为时已晚,(时间分配稍不合理),但是这些都不是最重要的,最重要的是最后的几分钟光打T1没有检查程序的数据范围,我的T1 N^4的代码数据点分治的数据范围写错了,所以直接导致T1只有40分,(其实是有65分),但这并不是为自己的过是找借口,就像教练…
\(2019/8/27\)大考 \(\color{#ff0808}{\text{初二诀别赛(SAD)}}\) 题目名称 链接 寿司 \(BSOJ5111\) 秀秀的森林 \(BSOJ5125\) 分组 \(BSOJ5126\) 入阵曲 \(BSOJ5129\) 将军令 \(BSOJ5130\) 文本编辑器 \(BSOJ5089\) [第一题] \(\color{#0080FF}{\underline{\large{题面}}}\) [简述] 有一个由\(R\)和\(B\)组成的字符串环,每次可以交…
T1:入阵曲 题目大意:给定一个N*M的矩形,问一共有多少个子矩形,使得矩形内所有书的和为k的倍数. 60%:N,M<=80 枚举矩形的左上角和右下角,用二维前缀和求出数字之和. 时间复杂度$O(N^4)$ 100% 我们发现美剧每个矩形的复杂度已经为N4,那么我们改为枚举矩形的边界.先枚举左右边界,再从上到下枚举下边界,两个矩形相减便可得出所有矩形,枚举时将每个矩形的区间和压入桶中,每次枚举时直接在桶中查询,左右边界更换时清桶.注意下边界要从0开始枚举. 时间复杂度$O(N^3)$ 记得要卡常…
A.入阵曲 部分分很肥,正解写得常数稍大就会和暴力一个分,考试的时候写什么自己考虑.(滑稽 部分分的循环边界手抖写错了-25 (原本暴力分中的10分都没了啊啊啊) 没写挂的话应该有75,其实就是二维前缀和+暴力枚举点对统计+$a[i][j]$都相等时只枚举子矩形大小再乘上这种大小出现的次数. 正解:$(sum[r]-sum[l-1])\% K=0 \rightarrow sum[r]\% K=sum[l-1]\% K$ 枚举行数$i,j$和列数$k$,维护i行和j行之间.k列左侧在%K意义下同余…