定理一:

是k个两两互质的正整数,,则同余式

      

                                    (1)


与同余式组

      

           (i=1,2,3,...,k)          (2)


等价,并且若用表示对模的解数,T表示(1)式对模m的解数,


则:

所以求多项式的解可以用上述方法,先分解分别求出各个解再合并。

定理二:p是素数,r>=2是整数,是整系数多项式,设是同余方程


的一个解,以表示的导数。


(1)若,则存在整数t,使是同于方程的解。


(2)若,并且,则对于t=0,1,2,3,...,p-1,中的


x都是方程的解。



2013年全国邀请赛长沙赛区的E题就是利用上述的定理。


题目:Special equations


题目大意 :

给定函数 , pri为质数,求一个x使得,, 如果没有,输出No Solution.


首先求得所有的i,使得 

然后分别验证所有的 , 是否满足

由于在第一次枚举的时候保留下来的i不会很多,第二次暴力枚举的时候复杂度不会很大。

#include <iostream>
#include <string.h>
#include <stdio.h>using namespace std;
typedef long long LL;const int N=105;LL a[N];
LL temp[N];LL Equ(LL n,LL x)
{if(n==1)      return a[1]*x+a[0];else if(n==2) return a[2]*x*x+a[1]*x+a[0];else if(n==3) return a[3]*x*x*x+a[2]*x*x+a[1]*x+a[0];else if(n==4) return a[4]*x*x*x*x+a[3]*x*x*x+a[2]*x*x+a[1]*x+a[0];
}int main()
{LL T,n,i,j,p,k,tt=1;cin>>T;while(T--){cin>>n;for(i=n;i>=0;i--)cin>>a[i];cin>>p;k=0;for(i=0;i<p;i++){if(Equ(n,i)%p==0) {temp[k++]=i;}}if(k==0){printf("Case #%I64d: No solution!\n",tt++);continue;}LL ret=-1;for(i=0;i<k;i++){bool flag=0;for(j=0;j<p;j++){LL x=(temp[i]+j*p);if(Equ(n,x)%(p*p)==0){ret=x;flag=1;break;}}if(flag) break;}if(ret==-1){printf("Case #%I64d: No solution!\n",tt++);continue;}printf("Case #%I64d: %I64d\n",tt++,ret);}return 0;
}

高次同余方程式的解数及解法相关推荐

  1. 信息安全数学基础-素数模高次同余方程 2021-10-09

    8.素数模高次同余方程 1. 素数模的高次同余方程 问题的引出 一般素数p模同余方程 f ( x ) = a 0 x n + . . . + a n ≡ 0 ( m o d p ) , p 不 整 除 ...

  2. (扩展)BSGS与高次同余方程

    前言: 今天更BSGS算法.俗称大步小步算法(Big-Step G--Step),又称拔山盖世.北上广深.白色狗屎 . 问题: 求解指数同余方程:ax≡b(modp)a^{x}\equiv b(mod ...

  3. 数论 —— 高次同余方程与 BSGS 算法

    [概述] BSGS(Baby Step Giant Step)算法,又称大小步算法,其主要用于解形如  的高次同余方程中的 x,其核心思想是分块. 当 A 与 C 互质时,通过费马小定理: 可知,当  ...

  4. 数学 ( 解高次同余方程 )——Discrete Logarithm Problem ( UVA 7457 )

    题目链接: https://icpcarchive.ecs.baylor.edu/index.php?option=com_onlinejudge&Itemid=8&page=show ...

  5. 同余——同余方程+线性同余方程+高次同余方程

    传送门:203. 同余方程 - AcWing题库 思路:应用欧几里得算法求 代码: #include<bits/stdc++.h> using namespace std; typedef ...

  6. POJ3243 Clever Y 解 高次同余方程

    解高次同余方程A^x≡B(mod C)算法流程 S1:i从0到100循环,如果满足A^i≡B(mod C),那么i就为所求,否则继续S2: S2:令d=0,D=1,执行如下循环: while((tmp ...

  7. 高次同余式的解数和解法

    索引 (解数)定理1:设m1,m2,⋯,mk∈Z>0{{m}_{1}},{{m}_{2}},\cdots ,{{m}_{k}}\in {{\mathbb{Z}}_{>0}}m1​,m2​, ...

  8. 洛谷OJ上的A+B花(zhuang)式(bi)解法

    转眼间快到了8月,一想自己都毕业好久了,很怀念曾经在各大OJ上刷题的时光,今天无意在一个算法群里看到最近有个叫洛谷的oj网站貌似蛮火的,于是注册了一个下进去看一看,顺手打开了A+B problem,然 ...

  9. NOI数学:二次同余方程的解法

    高精度取模 高精度取模_to_more_excellent的博客-CSDN博客_c++高精度取模 C++ P1082 同余方程 C++ P1082 同余方程_ice_word的博客-CSDN博客_c+ ...

最新文章

  1. linux下mkdir
  2. Tensorflow实现MNIST数据自编码(1)
  3. Method Area(方法区)
  4. 最简单的卸载vrv方法_低端赤道仪粗对极轴最简单方法
  5. JAVA仿真之银行出纳员
  6. native关键字(涉及本地方法栈)
  7. 把足球还给市场!市场不要你要吗?
  8. AudioClip 参数解析
  9. win10无法装载iso文件_教你用win10自带虚拟光驱打开iso镜像文件的方法
  10. win10u盘被写保护怎么解除_win10系统U盘提示磁盘被写保护的解决办法
  11. 解决CRMEB跨域问题
  12. 用母函数(生成函数)求解整数拆分问题
  13. 常见网络故障及其解决办法
  14. 斗鱼房间信息自动化爬取
  15. 批处理命令和常用脚本
  16. 【C++】输入的几种方式
  17. 1024 程序员节官方剧透:重磅大咖再聚,共话中国技术新生态
  18. 百度云服务器网络检查,百度推出网站安全监测平台,为服务器提供安全漏洞扫描...
  19. Android材料设计之材料主题
  20. 架构活动中风险敞口的预估

热门文章

  1. 多服务器显卡使用状态监控工具实现
  2. 第八代小冰年度发布会召开,开启小冰智能生涯
  3. Espresso之RecyclerView
  4. SEM竞价入门的4个基本常识|零基础必看
  5. mipi的dsi全称_MIPI DSI 协议介绍
  6. 自动控制理论开环与闭环思考(从飞行控制角度)
  7. java图片的在线预览_【Java】web实现图片在线预览
  8. android夜间切换失败,Android夜间模式切换记录
  9. 为什么会出现锟斤拷?
  10. 老男孩第十四期Python学习班之Day02