这题以前就被灌输了“打表找规律”的思想,所以一直没有好好想这道题,过了一年还不太会qwq.虽然好像确实很简单,但是还是带着感觉会被嘲讽的心态写这个题解...而且还有一个log做法不会... 法1:(一开始没看懂,后由hkk神仙教导ORZ) 因为$ax+by=k$如果无视$\{x,y\}$非负整数解的条件的话,显然由于$gcd(a,b)=1$,所以所有$k$都可以表出.那么依题意如果有$k$不可以表出,是因为受了题目非负整数解条件的限制,也就是$x<0,y<0$,又因为$x,y$不可能同时$&l…
原题: 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在 小凯无法准确支付的商品. a,b<=10^9 结论题,记得我当时在现场大力打表做出来了 听说好像还是小学奥数题 不过数论推结论不难 由裴蜀定理及其引理,因为gcd(a,b)=1,所以对于任意整数c,都存在整数x和y满足ax+by=c 既然丢番图方程有解,为什么还…
这应该是近年来最坑的第一题了. 我第一眼看到这题上来就打表,数据范围告诉我复杂度应该是log级的,然而一个小时后才发现是一个输出结论. 设较小数是a 较大数是b 写出几组可以发现一个规律就是一旦出现连续a个可以凑出来的价格那么后面的都能凑出来 而这a个数中最大的那个应该是 b*(a-1)-+a*0这种形式 也就是说之前的a都转成了几个b的形式 原因也就是a,b互质 而一共是a个数,所以减去a就是答案了 化简式子 a*b-a-b 就不贴代码了哈…
洛谷P3951 看到题目,很容易想到这一题是求使ax+by=c(a,b,c∈N)无非负整数解的最大c 由裴蜀定理可知方程一定有整数解(a,b互素,gcd(a,b)=1|c) 解法一:暴力枚举 看到题目我的第一想法是求出ax+by=1的解然后枚举c使x,y扩大c倍后仍无非负整数解 枚举c应该要从1到a*b……看看数据范围就知道会WA掉4个点 这个解法很傻瓜我就不再赘述了……代码略 期望得分:60 解法二:小学奥数 虽然我不想承认但真**是小学奥数!! 因为a,b,c都>0,所以方程的解最多有一个负…
LINK 思路 因为我想到的根本不是网上的普遍做法 所以常数出奇的大,而且做法极其暴力 可以形容是带优化的大模拟 进入正题: 首先一个很显然的思路是如果在合法的路径网络里面存在零环是有无数组解的 然后这个直接对所有边权是0的边进行一次toposort看看有没有点没有被访问到 然后剩下的dp怎么设计? \(dp_{i,j}\)表示走到了第i个点,如果当前点到n走最短路最后路径比最短路径多出来了j 然后转移的时候发现是需要搞定顺序的问题?咋办? 发现一条边新的贡献是\(dis2_{v}+E[i].w…
noip2017 D1T1 小凯的疑惑 某zz选手没有看出这道结论题,同时写出了exgcd却不会用,只能打一个哈希表骗了30分 题目大意: 两个互质的正整数a和b,求一个最小的正整数使这个数无法表示为ax+by(x,y为自然数)的形式 思路: 结论题:ans=a*b-a-b #include<algorithm> #include<iostream> #include<cstdlib> #include<cstring> #include<cstdio…
找规律:ans=a*b-a-b 证明:(可见 体系知识) gcd(A, B) = 1 → lcm(A, B) = AB 剩余类,把所有整数划分成m个等价类,每个等价类由相互同余的整数组成 任何数分成m个剩余类,分别为 mk,mk+1,mk+2,……,mk+(m-1) 分别记为{0(mod m)},{1(mod m)}…… 而n的倍数肯定分布在这m个剩余类中 因为gcd(m,n)=1,所以每个剩余类中都有一些数是$n$的倍数,并且是平均分配 设 kmin = min { k | nk ∈ {i (…
前言: 数学题,对于我这种菜B还是需要多磨啊 Simple 首先它问不是好数的数量,可以转化为用总数量减去是好数的数量. 求"好数"的数量: 由裴蜀定理得,如果某个数\(i\)不能整除\(gcd(n,m)\),那么一定不是好数. 所以,我们把\(n,m,q\)分别除以\(gcd(n,m)\),是不影响得出的"好数"数量的. 好,那么现在\(n,m\)就互质了. 现在,就把问题转化为了(用比较形象化的语言来说,就是)有\(n,m\)互质,求\([1,q]\)中有多少个…
「NOIP2017」宝藏 题解 博客阅读效果更佳 又到了一年一度NOIPCSP-S 赛前复习做真题的时间 于是就遇上了这道题 首先观察数据范围 \(1 \le n \le 12\) ,那么极大可能性是状压 \(\texttt{DP}\) 或者 \(\texttt{DFS}\) 爆搜 但由于这题放在了 \(\texttt{DP}\) 列表里面,于是优先考虑状压 简化题意: 从给定的 \(n\) 个点,\(m\) 条边的有重边的无向联通图中,找出一棵生成树,使得题目所求价值最小 从题目给出的建边价值…
「NOI2013」小 Q 的修炼 第一次完整的做出一个提答,花了半个晚上+一个上午+半个下午 总体来说太慢了 对于此题,我认为的难点是观察数据并猜测性质和读入操作 我隔一会就思考这个sb字符串读起来怎么这么麻烦啊 首先可以发现,这个所有的选择都之后往后走,就是个topo图 task1,2,3 观察到数据有形如 s x x+11 v 3 + c y v 4 + c y v 5 + c y v 6 + c y v 7 + c y v 8 + c y v 9 + c y v 10 + c y v 11…
「SCOI2015」小凸想跑步 最开始以为和多边形的重心有关,后来发现多边形的重心没啥好玩的性质 实际上你把面积小于的不等式列出来,发现是一次的,那么就可以半平面交了 Code: #include <cstdio> #include <cmath> #include <algorithm> #define Vector Point const int N=2e5+10; const double eps=1e-7; int n,m,l,r; struct Point {…
「SCOI2015」小凸解密码 题意:给一个环,定义一段连续的极长\(0\)串为\(0\)区间,定义一个位置的离一个\(0\)区间的距离为这个位置离这个区间中\(0\)的距离的最小值,每次询问一个位置,求离它最远的\(0\)区间与它的距离,带修改 于是我是多sb才会想到在点分裂平衡树上做类似三分的sb操作? 而且我现在的代码还是错的,只有srand的fhq才能过,不过根据对拍,错误概率很小. 思路,在平衡树上维护\(0\)区间的相对位置 然后每个点维护子树最左区间和子树最右区间 我们把每个询问的…
「SCOI2015」小凸玩矩阵 我好沙茶啊 把点当边连接行和列,在外面二分答案跑图的匹配就行了 我最开始二分方向搞反了,样例没过. 脑袋一抽,这绝壁要费用流,连忙打了个KM 然后wa了,一想这个不是完备匹配啊,k个鬼的m 又换回二分图匹配... Code: #include <cstdio> #include <cstring> #include <cctype> #include <algorithm> #define koito_yuu 1 using…
「SCOI2015」小凸玩密室 虽然有心里在想一些奇奇怪怪的事情的原因,不过还是写太久了.. 不过这个题本身也挺厉害的 注意第一个被点亮的是任意选的,我最开始压根没注意到 \(dp_{i,j}\)代表\(i\)号点子树最后连出去的一个点连的是它第\(j\)层的祖先 \(f_{i,j}\)代表\(i\)号点子树最后连出去的一个点连的是它第\(j\)层祖先的另一个儿子 然后我们就可以拼子树,做换根了 要讨论只有一个儿子的情况 Code: #include <cstdio> #include <…
题目链接 loj#2009. 「SCOI2015」小凸玩密室 题解 树高不会很高<=20 点亮灯泡x,点亮x的一个子树,再点亮x另外的子树, 然后回到x的父节点,点亮父节点之后再点亮父节点的其他子树 所以对于一个节点x,有这样两种情况 x还没有被点亮,那么下一个被点亮的是x的一个儿子 x是叶子节点,那么下一个被点亮的是它的祖先,或者是它祖先的儿子 设f[i][j]表示点亮i之后回到i的第j个祖先的最小花费 设g[i][j]表示点亮i之后回到i的第j个祖先的另一个儿子的最小花费 然后从下到上,由儿…
#2006. 「SCOI2015」小凸玩矩阵 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据   题目描述 小凸和小方是好朋友,小方给小凸一个 N×M N \times MN×M(N≤M N \leq MN≤M)的矩阵 A AA,要求小凸从其中选出 N NN 个数,其中任意两个数字不能在同一行或同一列,现小凸想知道选出来的 N NN 个数中第 K KK 大的数字的最小值是多少. 输入格式 第一行给出三个…
「SCOI2015」小凸玩矩阵 思路: 二分+最大流: 代码: #include <bits/stdc++.h> using namespace std; #define maxn 300 #define maxque 666666 #define INF 0x3f3f3f3f ],cnt,s,t; ],que[maxque<<]; inline void in(int &now) { ; ')Cget=getchar(); ') { now=now*+Cget-'; Cg…
#2008. 「SCOI2015」小凸想跑步   题目描述 小凸晚上喜欢到操场跑步,今天他跑完两圈之后,他玩起了这样一个游戏. 操场是个凸 n nn 边形,N NN 个顶点按照逆时针从 0∼n−1 0 \sim n - 10∼n−1 编号.现在小凸随机站在操场中的某个位置,标记为 P PP 点.将 P PP 点与 n nn 个顶点各连一条边,形成 N NN 个三角形.如果这时 P PP 点,0 00 号点,1 11 号点形成的三角形的面积是 N NN 个三角形中最小的一个,小凸则认为这是一次正确…
#2006. 「SCOI2015」小凸玩矩阵   题目描述 小凸和小方是好朋友,小方给小凸一个 N×M N \times MN×M(N≤M N \leq MN≤M)的矩阵 A AA,要求小凸从其中选出 N NN 个数,其中任意两个数字不能在同一行或同一列,现小凸想知道选出来的 N NN 个数中第 K KK 大的数字的最小值是多少. 输入格式 第一行给出三个整数 N NN.M MM.K KK.接下来 N NN 行,每行 M MM 个数字,用来描述这个矩阵. 输出格式 输出选出来的 N NN 个数中…
#2009. 「SCOI2015」小凸玩密室 内存限制:256 MiB时间限制:1000 ms标准输入输出 题目类型:传统评测方式:文本比较 上传者: 匿名 提交提交记录统计讨论测试数据   题目描述 小凸和小方相约玩密室逃脱,这个密室是一棵有 n nn 个节点的完全二叉树,每个节点有一个灯泡.点亮所有灯泡即可逃出密室.每个灯泡有个权值 Ai A_iA​i​​,每条边也有个权值 bi b_ib​i​​. 点亮第 1 11 个灯泡不需要花费,之后每点亮一个新的灯泡 V VV 的花费,等于上一个被点…
题目详见:[P3951]小凯的疑惑 首先说明:此题为一道提高组的题.但其实代码并没有提高组的水平.主要考的是我们的推断能力,以及看到题后的分析能力. 分析如下: 证明当k>ab-a-b时,小凯可以准确支付这个物品. 显然,可以列出一个不定方程ma+nb=k,(m n,为未知数)由于m,n是金币个数,所以m>-1,n>-1, 这个不定方程的通解为m=m0+bt,n=n0-at,(仅仅为写法的一种,不过这样写最方便,m0,n0为方程的一组解), m0+bt>-1,n0-at>-1…
# NOIP 2017 小凯的疑惑 思路 a,b 互质 求最大不能表示出来的数k 则k与 a,b 互质 这里有一个结论:(网上有证明)不过我是打表找的规律 若 x,y(设x<y) 互质 则 : \(nx\equiv\)a (mod y)若将x依次加倍则可以得 nx mod y|ans ---|---| x| a | 2x| 2a mod y 3x|3a mod y| 4x |4a mod y| ...|...| yx|ya mod y| 这时a的值刚好把 0 ~ y-1内的所有数字都遍历了一遍.…
洛谷P3951 小凯的疑惑 原题 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在 小凯无法准确支付的商品. 输入输出格式 输入格式: 两个正整数 a 和 b,它们之间用一个空格隔开,表示小凯中金币的面值. 输出格式: 一个正整数 N,表示不找零的情况下,小凯用手中的金币不能准确支付的最贵的物品的价值. 输入…
「NOI2015」小园丁与老司机 要不是这道码农题,去年就补完了NOI2015,其实两问都比较simple,但是写起来很恶心. 先解决第一问,记 \(dp[i]\) 表示老司机到达第 \(i\) 棵树时能许愿的最多的树的数量,考虑没有左右方向的决策时,转移是个DAG,直接做. 对于左右方向的决策,会发现最优解一定是以下两种中的一种. 对于点 \(x\) ,从左边的某个点 \(y\) 进入这一行,然后先向左走走到最左边的一棵树,然后再调头走到点 \(x\) . 对于点 \(x\) ,从右边的某个点…
#3020. 「CQOI2017」小 Q 的表格 这个的话求出来\(g = gcd(a,b)\) 会修改所有gcd为g的位置 我们要求\((g,g)\)这个位置的数一定是\(g^{2}\)的倍数 之后的\(gcd(a,b) == g\)的位置也会满足 $\frac{f(g,g)}{g^{2}} = \frac{f(a,b)}{ab} $ 注意\(\frac{f(g,g)}{g^{2}}\),\(\frac{f(a,b)}{ab}\)都不一定是整数,但是\(f(g,g)\)和\(f(a,b)\)是…
P3951 小凯的疑惑 题解 题意也就是求解不能用 ax+by 表示的最大数 ans(a,b,x,y,都是正整数) 给定 a ( =7 ) ,  b ( =3 ) 我们可以把数轴非负半轴上的数按照a的剩余类分成a列,如上图 所以 a 的倍数一定可以取到,此时 y=0,那么我们把 a 的倍数这一列划掉 然后我们再考虑 y!=0的情况: (1)b的倍数一定可以取到,此时 x=0 (2)和b  %a  同余的数字一定可以取到,其实就是确定了 y,then确定了by,加上 a 的倍数 所以我们就可以把…
「SCOI2015」小凸玩密室 小凸和小方相约玩密室逃脱,这个密室是一棵有 $ n $ 个节点的完全二叉树,每个节点有一个灯泡.点亮所有灯泡即可逃出密室.每个灯泡有个权值 $ A_i $,每条边也有个权值 $ b_i $. 点亮第 $ 1 $ 个灯泡不需要花费,之后每点亮一个新的灯泡 $ V $ 的花费,等于上一个被点亮的灯泡 $ U $ 到这个点 $ V $ 的距离 $ D(u, v) $,乘以这个点的权值 $ A_v $. 在点灯的过程中,要保证任意时刻所有被点亮的灯泡必须连通,在点亮一个灯…
其实就是当年sxy给我讲的墨墨的等式,只是当时比较菜听得似懂非懂. 小凯的疑惑 去年noipday1t1,当时随便猜了个结论结果猜对了,现在瞎证一下,答案是a*b-a-b. 设a为a,b中较小的一个,发现b*0%a,b*1%a,b*2%a,b*3%a……b*(a-1)%a的结果两两不同. 反证,如果存在b*x%a=b*y%a(x<y<a),即b*x-b*y=0(mod a),b*(x-y)=0(mod a), ∵gcd(a,b)=1 ∴x-y=0(mod a) 不满足x<y<a,得…
目录 题面 题目链接 题目描述 输入输出格式 输入格式: 输出格式: 输入输出样例 输入样例: 输出样例: 说明 思路 证明 AC代码 include<bits/stdc++.h> 题面 题目链接 P3951 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想知道在无法准确支付的物品中,最贵的价值是多少金币?注意:输入数据保证存在 小凯无法准确支付的商品. 输入输出格…
P3951 小凯的疑惑 数论极菜的小萌新我刚看这题时看不懂exgcd做法的题解,后来在网上找到了一篇博客,感觉代码和推导都更加清新易懂,于是在它的基础上写了题解qwq 分析 两数互质,且有无限个,想到不定方程ax+by=gcd(a,b)=1,并且是一定有解的 对于合法的数k,可以表示为 k=a×x1+b×y1(x1>=0,y1>=0) 找最大不合法的数,那么比它大的数(如k+1)一定是合法的,于是题目变成找最大的k使k-1不合法 由于本题中ax+by=1,对于不合法的数k-1,可以表示为 k-…