NOIP 2017 解题报告

---恢复内容开始---

  NOIP 2017 的题真的很难啊,怪不得当年我这个萌新爆零了(当然现在也是萌新)越学越觉得自己什么都不会。

想要成为强者要把这些好题都弄懂弄透 至少现在6道题我都比较陌生 都是以前写的现在再复习一遍吧。

Day1 T1

NOIP 2017 解题报告

这是哪门子题啊好难 怎么算啊 好了我感觉我要爆零了。。很难拿分。

考虑暴力 考虑我眼看可以看出答案<=a*b 也就是两数的最大公约数当然这也是猜结论然后在这个范围内枚举某个数字看其能否被拼成我们只需枚举其中一个看看另一个...检验一下就好了期望得分30~45左右。

考虑正解 貌似是exgcd 再复习一下吧 对于一个最大不能找出来的数字w 一定有ax+by=w+1;

考虑如何求出 w=ax+by; 1=ax0+by0; w-1=a(x-x0)+b(y-y0); 由于此数字不能被表示出来则必然有 x-x0<0||y-y0<0

那么则有 x<x0||y<y0 再看这个式子 1=ax0+by0 这个是一定成立的 因为a,b互质 所以有 gcd(a,b)=1 则有

裴蜀定理 ax+by=gcd(a,b); 考虑再证明一下裴蜀定理吧 对于这个式子 ax+by=gcd(a,b);

如果b==0 则必然有x==1,y==0 使这个式子成立 当处于一般情况b>0 ax+by=gcd(a,b) 我们知道的 gcd(a,b)=gcd(b,a%b)

然后则有 bx1+(a%b)y1=gcd(b,a%b) a%b=a-(a/b)*b; bx1+(a-a/b*b)*y1=gcd(b,a%b); ay1+b(x1-a/by1)=gcd(b,a%b);

于是则有 x=y1 y=x1-a/by1 这样不断递归下去一定会有一解然后返上来然后得证。

然后接着上面的那个问题 考虑x-x0<0||y-y0<0 那么由于观察 ax0+by0=1 由于a,b>0 那么x0,y0 一定异号

好了我不证了 我TM就是个SB

上一篇:【游记】NOIP 2017


下一篇:【记录】VS2012新建MVC3/MVC4项目时,报:此模板尝试加载组件程序集“NuGet.VisualStudio.Interop...”