1. 证明:对于任意质数$p\gt 3$,$p^2-1$能被$24$整除。

证:平方差公式,$p^2-1 = (p-1)(p+1)$。

再把$24$分解质因数$2^3*3$。

三个相邻的自然数中至少有一个数是$3$的倍数,而$p$是质数不可能有因子$3$,所以$p-1,p+1$中必有一个数有因子$3$。

$p$是质数,所以一定是奇数,那$p-1,p+1$就是偶数,而相邻两个偶数中至少有一个是$4$的倍数,所以两个数至少有一个有$1$个因子$2$,另一个有$2$个因子$2$。

所以$(p-1)(p+1)$是$2^3*3=24$的倍数,得证。

2. 把$gcd$卡成$log$级别的。

使用斐波那契数列,$gcd(fib(n),fib(n-1))=gcd(fib(n-1),fib(n)\mod fib(n-1))=gcd(fib(n-1),fib(n-2))$。

事实上有一个预处理$O(n)$,查询$O(1)$的求gcd做法,WZJ下次课讲。

3. 对于任意正整数$n$与质数$p\mod 4=3$,有$p$不整除$n^2+1$。

反证法,假设能整除。

$n^2\equiv -1 (\mod p)$

$(n^2)^\frac{p-1}{2} \equiv (-1)^\frac{p-1}{2} (\mod p)$

结合题意可知$\frac{p-1}{2}$是奇数。所以$n^{p-1}\equiv -1 (\mod p)$

而我们想到费马小定理的$n^{p-1}\equiv -1 (\mod p)$。

但为什么可以转化成费马小定理呢?$p$是质数,但$n,p$一定互质么?

首先$p$是质数,所以一定不是$n$的倍数;其次,如果$n$是$p$的倍数,$n^2+1$一定不是$p$的倍数,就直接证明原题不能整除了(原因:两个相邻的正整数互质)。

所以$n,p$互质,可以套用费马小定理。

结合两者可得$1\equiv -1 (\mod p)$。

$p$不能是2,所以不存在满足的情况。

综上,不能整除。

4. 原题hdu4497。

由题可知有$gcd(\frac{x}{G},\frac{y}{G},\frac{z}{G})=1$(这三个数两两互素),此时应该满足$lcm(x,y,z)=L/G$,要求$\frac{L}{G}$为整数,则若$L\mod G=0$,则一定有解($x,y,z$ 都等于 $\frac{L}{G}$即可),反之无解。
此时将$L/G$作正整数唯一分解,$\frac{L}{G}={a_1}^{b_1}*{a_2}^{b_2}*...*{a_n}^{b_n}$。
对于一个质因子$a$,要满足$gcd(\frac{x}{G},\frac{y}{G},\frac{z}{G})=1$,则至少有一个$k=0$使某个$a^k=1$。
同时还得满足$lcm(\frac{x}{G},\frac{y}{G},\frac{z}{G})=\frac{L}{G}$,则至少有一个$k=b$使某个$b^k=\frac{L}{G}$。
这样就有三种情况$(0,0,b)(b,b,0)(0,1...b-1,b)$,算上不同排列,共有$3+3+6(b-1)=6*b$种。其他的同理。
由分步乘法计数原理得最终答案为$(6*b_1)*(6*b_2)*........(6*b_n)$。

【2018.10.15】WZJ笔记(数论)的更多相关文章

  1. 2018.10.15 NOIP训练 hyc的等比数列(数论+枚举)

    传送门 一道不错的枚举题. 显然桶排序之后瞎枚举一波. 考虑枚举首项和末项,假设首项除去一个最大的平方因子得到的结果为xxx. 那么末项一定等于xxx乘上一个平方数. 于是我们枚举首项,算出xxx然后 ...

  2. 【2018.10.15】noip模拟赛Day1

    题面 wzj的题解 T1 随便搜 #include<bits/stdc++.h> #define ll long long using namespace std; inline int ...

  3. 梦想CAD控件 2018.10.15更新

    下载地址: http://www.mxdraw.com/ndetail_10105.html 1. 完善com接口的ToCurves函数,转换CAD文字,多行文字到曲线 2. 修改DrawImage接 ...

  4. 2018.10.15 bzoj3564: [SHOI2014]信号增幅仪(坐标处理+最小圆覆盖)

    传送门 省选考最小圆覆盖? 亦可赛艇(你们什么都没看见) 在大佬的引领下成功做了出来. 就是旋转坐标使椭圆的横轴跟xxx轴平行. 然后压缩横坐标使得其变成一个圆. 然后跑最小覆盖圆就可以了. 注意题目 ...

  5. 2018.10.15 bzoj4570: [Scoi2016]妖怪(凸包)

    传送门 不得不说这题有点东西啊. 看到题第一眼二分,用二次函数求范围来进行checkcheckcheck,20分滚粗了233. 于是开始思考正解. 发现可以把每只怪物的二元组属性看成二维坐标. 这时对 ...

  6. 2018.10.15 bzoj4445: [Scoi2015]小凸想跑步(半平面交)

    传送门 话说去年的省选计算几何难度跟前几年比起来根本不能做啊(虽然去年考的时候并没有学过计算几何) 这题就是推个式子然后上半平面交就做完了. 什么? 怎么推式子? 先把题目的概率转换成求出可行区域. ...

  7. 2018.10.15 loj#6010. 「网络流 24 题」数字梯形(费用流)

    传送门 费用流经典题. 按照题目要求建边. 为了方便我将所有格子拆点,三种情况下容量分别为111,infinfinf,infinfinf,费用都为validi,jval_{id_{i,j}}valid ...

  8. 2018.10.15 loj#6013. 「网络流 24 题」负载平衡(费用流)

    传送门 费用流sb题. 直接从sss向每个点连边,容量为现有物品量. 然后从ttt向每个点连边,容量为最后库存量. 由于两个点之间可以互相任意运送物品,因此相邻的直接连infinfinf的边就行了. ...

  9. 2018.10.15 NOIP训练 水流成河(换根dp)

    传送门 换根dp入门题. 貌似李煜东的书上讲过? 不记得了. 先推出以1为根时的答案. 然后考虑向儿子转移. 我们记f[p]f[p]f[p]表示原树中以ppp为根的子树的答案. g[p]g[p]g[p ...

随机推荐

  1. SQL 视图、事务

    假设看多个不同的表 select *from student ,score,course,teacher 有重复的    改为select student.Sno,sname,ssex,sbirthd ...

  2. Python学习日志9月16日

    刚才我差点睡着了,差资料的时候太费神,有些累. 今天早晨学习了<head first HTML and CSS>,今天把昨天没看了的关于字体和颜色的一章节看完了,真长.我详细的做了笔记,并 ...

  3. aspose.cell 给excel表格设置样式

    方法1: Style styleTitle = workbook.Styles[workbook.Styles.Add()];//新增样式 styleTitle.HorizontalAlignment ...

  4. Open Cascade:AIS_InteractiveContext如何调用函数选择AIS对象

    AIS_InteractiveContext如何调用函数选择AIS对象 myAISContext->MoveTo(point.x, point.y, myView); myAISContext- ...

  5. Sublime Text 套件介紹(四):Pretty JSON

    JSON,一個輕量級的資料交換語言,目前許多網站AJAX request的回應結果都是JSON格式   以下是一個標準的JSON格式   { "firstName": " ...

  6. linx vim 文件操作 ubuntu server 软件源

    mv /etc/danted.conf /etc/danted.conf.bak sudo wget https://files.cnblogs.com/files/marklove/danted.t ...

  7. vc生产垃圾清理

    @echo off echo 清除所有obj pch idb pdb ncb opt plg res sbr ilk suo文件,请稍等...... pause del /f /s /q .\*.ob ...

  8. off-by-one&doublefree. 看雪10月ctf2017 TSRC 第四题赛后学习

    off-by-one 0x00 发现漏洞 1.off-by-one 在massage函数中,如图所示,可以修改的字节数比原内存大小多了一个字节 2.悬挂指针 可以看到,在free堆块的时候,没有清空指 ...

  9. Linux安全调优1:CentOS防火墙的设置与优化

    CentOS防火墙的设置与优化 时间:2014-09-11 02:11来源:blog.csdn.net 作者:成长的小虫 的BLOG 举报 点击:4908次 一.设置主机防火墙. 开放: 服务器的:w ...

  10. js之数组知识

    一.数组的定义(来源于Array.prototype) 1.构造函数方法: (1)var arr = new Array();//没有参数等价于 var arr = []; (2)var arr = ...