NOIp D1T1 小凯的疑惑
吐槽
果然让人很疑惑,这道题,对于我这种数学渣渣来说太不友好了,哪里想得到结论,猜也猜不到。
思路一
纯数学,见过的飞快切掉,没见过的就...
结论就是:已知$a,b$为大于$ 1 $的互质的正整数,则使不定方程$ax+by=c$ 不存在非负整数解的最大整数
好像是叫什么赛瓦维斯特定理,但是除了这道题的题解之外,我没有在其它任何地方搜到,跟数学相关的痕迹一点都没有,太神奇了,难道这是一个只有$OIer$才研究的公式
证明一下吧。
首先,先证$ax+by=ab−a−b(a,b>1,(a,b)=1)$不存在非负整数解。
用反证法,假设存在$x>=0,y>=0$,使得 $ax+by=ab−a−b(a,b>1,(a,b)=1)$成立。
移项,得$a*(x+1)+b*(y+1)=a*b$
$a*(x+1)=b*(a-y-1)$
又因为$(a,b)=1$
则 $b\mid (x+1)$
同理可证:$a|(y+1)$
又因为$x>=0,y>=0$
所以$x>=b,y>=a$
则$a*(x+1)+b*(y+1)>=ab+ba>=2ab$
因为$a>1,b>1$
所以$ab>1$
所以$2ab>a$
与之前假设的$a*(x+1)+b*(y+1)=a*b$矛盾,所以假设不成立。
接下来,需要证明$ax+by=c$ $(a,b>1,(a,b)=1)$中,对于所有的$c>ab-a-b$,方程都存在非负整数解
设$c=ka+m-a-b(k>=b,a<=m<=a-1)$,即$ax+by=ka+m-a-b(k>=b,1<=m<=a-1)$
因为$(a,b)=1$,根据裴蜀定理,可知存在$x_0,y_0∈Z$,使$ax_0+by_0=1$
所以存在$x_0,y_0∈Z$,使$ax_0+by_0=m$
$y_0=(m-ax_0)/b$,对于$m%b$的不同,有$b-1$种$x_0$的取值,使得$y_0$是整数
我们令$-(b-1)<=x_0<=-1$,以此来先保证$y_0>=0$
由于$-ax_0>1,m>=1$,所以事实上$y_0>=1$
于是取$y=y_0-1$,则$y>=0$
则$x_0=(m-by_0)/a$,
$x=(ka+m-a-b-by)/a=k-1+(m-b-by)/a=k-1+(m-b-b(y0-1))/a=k-1+(m-by_0)/a=k-1+x_0$
又因为$-(b-1)<=x_0<=-1$,则$-(b-1)+k-1<=x<=-1+k-1$,$-b+k<=x<=k-2$
又因为$k>=b$,则$-b+k>=0$,则$x>=0$
得证。
思路二
暴力打表找规律,不过在没有OEIS的情况下我一般都找不出来的...
这就要看运气了
代码
说实话,这道题不贴代码都可以qwq
#include<iostream>
#include<string>
#include<cstdio>
#include<cstring>
#include<queue>
#include<algorithm>
#include<vector>
using namespace std;
#define N 255
#define ll long long
#define INF 0x3f3f3f3f
ll a,b;
int main()
{
scanf("%lld %lld",&a,&b);
printf("%lld\n",a*b-a-b);
return ;
}
NOIp D1T1 小凯的疑惑的更多相关文章
- NOIP 2017 小凯的疑惑
# NOIP 2017 小凯的疑惑 思路 a,b 互质 求最大不能表示出来的数k 则k与 a,b 互质 这里有一个结论:(网上有证明)不过我是打表找的规律 若 x,y(设x<y) 互质 则 : ...
- 洛谷 P3951 NOIP 2017 小凯的疑惑
洛谷 P3951 NOIP 2017 小凯的疑惑 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付 ...
- NOIP2017 D1T1小凯的疑惑
这应该是近年来最坑的第一题了. 我第一眼看到这题上来就打表,数据范围告诉我复杂度应该是log级的,然而一个小时后才发现是一个输出结论. 设较小数是a 较大数是b 写出几组可以发现一个规律就是一旦出现连 ...
- NOIP 2017 小凯的疑惑(同余类)
题意 给出两个互质的数a,b问最大的不能被xa+yb(x,y>=0)表示的数.(a,b<=109) 题解 NOIPday1T1一道数论题,不知埋葬了多少人的梦想. 用同余类去解释. 我们依 ...
- NOIP2017 D1T1 小凯的疑惑
洛谷P3951 看到题目,很容易想到这一题是求使ax+by=c(a,b,c∈N)无非负整数解的最大c 由裴蜀定理可知方程一定有整数解(a,b互素,gcd(a,b)=1|c) 解法一:暴力枚举 看到题目 ...
- luogu 3951 小凯的疑惑
noip2017 D1T1 小凯的疑惑 某zz选手没有看出这道结论题,同时写出了exgcd却不会用,只能打一个哈希表骗了30分 题目大意: 两个互质的正整数a和b,求一个最小的正整数使这个数无法表示为 ...
- 2017提高组D1T1 洛谷P3951 小凯的疑惑
洛谷P3951 小凯的疑惑 原题 题目描述 小凯手中有两种面值的金币,两种面值均为正整数且彼此互素.每种金币小凯都有 无数个.在不找零的情况下,仅凭这两种金币,有些物品他是无法准确支付的.现在小 凯想 ...
- 联赛膜你测试20 T1 Simple 题解 && NOIP2017 小凯的疑惑 题解(赛瓦维斯特定理)
前言: 数学题,对于我这种菜B还是需要多磨啊 Simple 首先它问不是好数的数量,可以转化为用总数量减去是好数的数量. 求"好数"的数量: 由裴蜀定理得,如果某个数\(i\)不能 ...
- 【比赛】NOIP2017 小凯的疑惑
找规律:ans=a*b-a-b 证明:(可见 体系知识) gcd(A, B) = 1 → lcm(A, B) = AB 剩余类,把所有整数划分成m个等价类,每个等价类由相互同余的整数组成 任何数分成m ...
随机推荐
- 【洛谷P3128】Max Flow
题目大意:给定一棵 N 个节点的无根树,有 M 个操作,每次选定一条树链,将这条链上所有点的点权 +1,最后求树上点的最大点权是多少. 题解:树上差分算法的应用. 发现操作有 M 次,但是询问只有一次 ...
- C++构造函数实例
#include<iostream> #include <string> using namespace std; class Person { public: //无参(默认 ...
- Python 操作 MySQL 数据库Ⅲ
数据库查询操作 Python查询Mysql使用 fetchone() 方法获取单条数据, 使用fetchall() 方法获取多条数据. fetchone(): 该方法获取下一个查询结果集.结果集是一个 ...
- Nagios-报错:UNKNOWN Can't connect to the JVM:
原因: 由于手动开启nrpe程序,产生临时文件,需要把产生的多余文件删除. [root@nagios ~]# ll /tmp/drwx------ 3 root root 17 Aug 12 13:4 ...
- Springboot设置session超时时间
按优先级高到低说: 第一种: spring boot 启动类里面: package com.mycenter; import org.mybatis.spring.annotation.MapperS ...
- Spring Boot教程(二十六)使用Spring Security安全控制
准备工作 首先,构建一个简单的Web工程,以用于后续添加安全控制,也可以用之前Chapter3-1-2做为基础工程.若对如何使用Spring Boot构建Web应用,可以先阅读<Spring B ...
- Linux-expect脚本-1
expect是基于tcl演变而来的,所以很多语法和tcl类似,基本的语法如下所示: 首行加上/usr/bin/expect spawn: 后面加上需要执行的shell命令,比如说spawn sudo ...
- Mysql 里CHAR和VARCHAR的最大长度及一些注意事项
先写出结论: Mysql 5中 非空CHAR的最大总长度是255[字节]:非空VARCHAR的最大总长度是65533[字节]. 可空CHAR的最大总长度是254[字节]:可空VARCHAR的最大总长度 ...
- 分布式-信息方式-ActiveMQ静态网络连接信息回流功能
“丢失”的消息 有这样的场景, broker1和 broker2通过 netwoskconnector连接,一些 consumers连接到 broker1,消费 broker2上的消息.消息先被 br ...
- JavaWeb--Servlet 详解
一.基本概念 Servlet是运行在Web服务器上的小程序,通过http协议和客户端进行交互.这里的客户端一般为浏览器,发送http请求(request)给服务器(如Tomcat).服务器接收到请求后 ...