NOIP2014 uoj20解方程 数论(同余)
又是数论题
Q&A
Q:你TM做数论上瘾了吗
A:没办法我数论太差了,得多练(shui)啊
题意
题目描述
已知多项式方程:
a0+a1x+a2x^2+..+anx^n=0
求这个方程在[1, m ] 内的整数解(n 和m 均为正整数)
输入输出格式
输入格式:
输入文件名为equation .in。
输入共n + 2 行。
第一行包含2 个整数n 、m ,每两个整数之间用一个空格隔开。
接下来的n+1 行每行包含一个整数,依次为a0,a1,a2..an
输出格式:
输出文件名为equation .out 。
第一行输出方程在[1, m ] 内的整数解的个数。
接下来每行一个整数,按照从小到大的顺序依次输出方程在[1, m ] 内的一个整数解。
我们来看看这鬼畜的NOIP题目怎么做(shui)
讲道理,这道题最难的地方在于:不知谁在洛谷上给它贴上了高精度的标签(管理给我滚粗来)我想知道有多少人在这狗血标签的引导下怒写高精+压位+秦九昭+各种奇技淫巧优化,最后拿个T回去哭
正解并没有用到高精度(虽然我写的输入是仿照高精度的,但是hzw大的代码是直接字符串处理的Orz)
但是hzw用了一个神奇的pre来存x的i次方,我懒得打就打了一个秦九昭(讲道理,秦九昭不会比暴力难打,而且可以少开一个数组)
顺便一提,据说大神用过的质数会有灵气,我直接用了hzw用的5个质数当mod
对于5个(其实无所谓选几个,多一点可以保险一些我这种rp不佳的必备)选出的质数p,每个都处理出1~p-1代入原式modp算出的结果
这个结果就可以代表所有modp同余的数的结果(因为显然每次增加p的话,结果变化量是p的倍数,modp以后不会变),若modp以后不为0则一定不是方程解
尽管我们不能保证为0的话实际结果就一定是0,但是用5个数都验证一遍以后基本就能保证这个结果为0
===没了===
上代码
1 #include<cstdio> 2 int mod[5]={11261,19997,22877,21893,14843}; 3 int n,m; 4 int ans[1000005]; 5 int a[5][105],res[5][30005],aa[105][10005],num[105]; 6 bool flag[105]; 7 int main() 8 { 9 scanf("%d%d",&n,&m); 10 char ch=getchar(); 11 for(int i=0;i<=n;i++) 12 for(num[i]=0,flag[i]=false,ch=getchar();(ch>='0' && ch<='9')||(ch=='-');ch=getchar()) 13 if(ch=='-') 14 flag[i]=true; 15 else 16 aa[i][++num[i]]=ch-'0'; 17 for(int i=0;i<5;i++) 18 for(int j=0;j<=n;j++) 19 { 20 a[i][j]=0; 21 for(int k=1;k<=num[j];k++) 22 a[i][j]=(a[i][j]*10+aa[j][k])%mod[i]; 23 if(flag[j]) 24 a[i][j]=-a[i][j]; 25 } 26 for(int t=0;t<5;t++) 27 for(int x=1;x<mod[t];x++) 28 { 29 int sum=0; 30 for(int i=n;i>=0;i--) 31 sum=(sum*x+a[t][i])%mod[t]; 32 res[t][x]=sum; 33 } 34 int sum=0; 35 bool flag; 36 for(int i=1;i<=m;i++) 37 { 38 flag=true; 39 for(int t=0;t<5;t++) 40 if(res[t][i%mod[t]]!=0) 41 { 42 flag=false; 43 break; 44 } 45 if(flag) 46 ans[++sum]=i; 47 } 48 printf("%d\n",sum); 49 for(int i=1;i<=sum;i++) 50 printf("%d\n",ans[i]); 51 return 0; 52 }
转载于:https://www.cnblogs.com/wanglichao/p/5683694.html
NOIP2014 uoj20解方程 数论(同余)相关推荐
- bzoj 3751: [NOIP2014]解方程(同余系)
3751: [NOIP2014]解方程 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 3983 Solved: 850 [Submit][Stat ...
- 【NOIP2014】解方程【秦九韶】【高精度处理】
传送门 其实秦九韶相信都会,主要是喜欢这道题对于高精度的处理. 我们发现这道题的情况比较特殊,a大的很,看起来是要高精度的鸭子. 不过我们发现一个事情.我们是在解方程,找到合适的x使多项式为0.那mo ...
- 题解 【NOIP2014】解方程
题面 解析 这题的数据看起来似乎特别吓人... 但实际上, 这题非常好想. 只需要模一个大质数就行了(我模的是1e9+7)(实测有效) 另外,a要用快读读入,再一边模Mod(因为实在太大了). 然后, ...
- 【BZOJ】3751: [NOIP2014]解方程【秦九韶公式】【大整数取模技巧】
3751: [NOIP2014]解方程 Time Limit: 10 Sec Memory Limit: 128 MB Submit: 4856 Solved: 983 [Submit][Stat ...
- 10.24T3 解方程 取模意义下运算+秦九韶算法
#1228 解方程 描述 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, m ] 内的整数解(n 和m 均为正整数) 输入 输入共n + 2 行. 第一行包含2 ...
- codevs3732==洛谷 解方程P2312 解方程
P2312 解方程 195通过 1.6K提交 题目提供者该用户不存在 标签数论(数学相关)高精2014NOIp提高组 难度提高+/省选- 提交该题 讨论 题解 记录 题目描述 已知多项式方程: a0+ ...
- python解方程代码_Python解方程的技巧介绍(代码示例)
本篇文章给大家带来的内容是关于Python解方程的技巧介绍(代码示例),有一定的参考价值,有需要的朋友可以参考一下,希望对你有所帮助. numpy numpy 用来解方程的话有点复杂,需要用到矩阵的思 ...
- python解复杂方程_Python数据处理篇之Sympy系列(五)---解方程
前言 sympy不仅在符号运算方面强大,在解方程方面也是很强大. 本章节学习对应官网的:Solvers 官方教程 (一)求解多元一次方程-solve() 1.说明: 解多元一次方程可以使用solve( ...
- java2的7次方怎么表示_python编程解方程第二弹:10行代码解二次方程(纯字符)...
用纯字符串格式来记录二次方程: '3x^2-10x-8=0' 'x^2-2x+1=0' '3x^2+14x+8=0' 'x^2=9' 二次方怎么表示呢?比如上面的^表示法,或者是python风格的** ...
最新文章
- 【radar】毫米波雷达-相机-激光雷达融合相关论文汇总(特征融合、RPN融合、弱监督融合、决策融合、深度估计、跟踪)(5)
- C与指针课后答案与编程练习(第一章)
- winform运行时如何接受参数?(示例)
- mysql数据库入门第二张试卷_2016计算机二级《MySQL数据库》练习题与答案
- Java Web应用的代码分层最佳实践。
- ASP.NET版在线客服系统源码 带服务端
- JS日历控件优化(增加时分秒)
- jstree禁用父节点点击_Jstree 使用CheckBox插件 选中父节点时被禁用的子节点也会选中问题...
- 商业杂志图表的经典用色
- pc电脑上浏览手机网站在线wap浏览器或模拟器软件
- PDF虚拟打印机有什么用?关于PDF虚拟打印机你要知道的事情都在这
- 五一入哪个牌子蓝牙耳机好?无线主动降噪蓝牙耳机排行榜
- InDesign 教程如何制作明信片?
- 检查并杀死mysql锁死的进程
- IDL数据类型之数组
- 手机APP与机顶盒互通
- 金网安泰JAVA开发工程师面经
- PHP版微信权限验证配置,音频文件下载,FFmpeg转码,上传OSS和删除转存服务器本地文件...
- 手机qq获取本地安装包的原理简单实现
- 回溯、图论——最大团问题(求最大完全子图)
热门文章
- linux+虚拟机上的wdcp,linux虚拟主机服务器wdcp系统教程
- 2019哈佛计算机专业录取,2019哈佛大学早申请录取数据公布 录取率再降1个点仅为13.4%...
- 荣耀x10max能不能升级为鸿蒙,荣耀终于放出大招!4部荣耀旗舰可升级鸿蒙,网友:终于等到了...
- xy坐标正负方向_【笛卡尔坐标系】
- java用switch语句根据分数输出学生等级
- c语言补全程序,跪求高手解答简单的程序补全题~!
- Java @Override注解
- 没有bug队——加贝——Python 练习实例 13,14
- android点击切换,android 导航栏中的按钮的点击切换
- 两台服务器安装redis集群_redis 集群搭建,小白也能搭三主三从的集群环境