【NOIP TG 解方程】
存代码:
#include<cstdio>
#include<cstdlib>
#include<cstring>
#include<iostream>
#include<algorithm>
#include<queue>
#include<cmath>
using namespace std;
#define M1 100007
#define M2 22901
#define M3 22907
#define Maxm 1000010
#define Maxn 110
#define Maxd 10010
#define LL long long int n,m; LL a[][Maxn];
char s[Maxd]; int op[Maxm]; int mymin(int x,int y) {return x<y?x:y;} bool check(LL x)
{
LL a1=,a2=,a3=;
for(int i=n;i>=;i--)
{
a1=(a1*x+a[][i])%M1;
a2=(a2*x+a[][i])%M2;
a3=(a3*x+a[][i])%M3;
}
return a1==&&a2==&&a3==;
} bool ok[]; int main()
{
int l;
scanf("%lld%lld",&n,&m);
for(int i=;i<=n;i++)
{
scanf("%s",s);
l=strlen(s);
a[][i]=a[][i]=;
int f=;
for(int j=;j<l;j++)
{
if(s[j]=='-') {f=-;continue;}
a[][i]=(a[][i]*+s[j]-'')%M1;
a[][i]=(a[][i]*+s[j]-'')%M2;
a[][i]=(a[][i]*+s[j]-'')%M3;
}
a[][i]*=f;a[][i]*=f;a[][i]*=f;
}
op[]=;
int cnt=;
memset(ok,,sizeof(ok));
for(int i=;i<=m;i++)
{
if(check((LL)i)) op[++op[]]=i;//,ok[i]=1;
// if(op[0]>n) break;
}
/*for(int i=mymin(100000,m)+1;i<=m;i++)
{
if(ok[i%M1]&&ok[i%M2]&&ok[i%M3]) op[++op[0]]=i;
}*/
printf("%d\n",op[]);
for(LL i=;i<=op[];i++) printf("%d\n",op[i]);
return ;
}
【NOIP TG 解方程】的更多相关文章
- [NOIp 2014]解方程
Description 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, m ] 内的整数解(n 和m 均为正整数) Input 输入文件名为equation .i ...
- NOIp 2014 解方程 【数学/秦九韶算法/大数取膜】By cellur925
题目传送门 题意:求高次方程的解及其个数.其中 1° 我们知道,高次方程是没有求根公式的.但是利用逆向思维,我们可以进行“试根法”,因为题目中给出了所求根的范围.但是多项式系数过于吓人,达到了sxbk ...
- vijos P1915 解方程 加强版
背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...
- [NOIP2014]解方程
3732 解方程 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 输入描述 Input Descrip ...
- 洛谷 题解 P2312 【解方程】
Problem P2312 [解方程] >>> record 用时: 1166ms 空间: 780KB(0.76MB) 代码长度: 2.95KB 提交记录: R9909587 > ...
- HDU 4793 Collision --解方程
题意: 给一个圆盘,圆心为(0,0),半径为Rm, 然后给一个圆形区域,圆心同此圆盘,半径为R(R>Rm),一枚硬币(圆形),圆心为(x,y),半径为r,一定在圆形区域外面,速度向量为(vx,v ...
- codevs3732==洛谷 解方程P2312 解方程
P2312 解方程 195通过 1.6K提交 题目提供者该用户不存在 标签数论(数学相关)高精2014NOIp提高组 难度提高+/省选- 提交该题 讨论 题解 记录 题目描述 已知多项式方程: a ...
- bzoj 3751: [NOIP2014]解方程 同余系枚举
3.解方程(equation.cpp/c/pas)[问题描述]已知多项式方程:a ! + a ! x + a ! x ! + ⋯ + a ! x ! = 0求这个方程在[1, m]内的整数解(n 和 ...
- Ural 1046 Geometrical Dreams(解方程+计算几何)
题目链接:http://acm.timus.ru/problem.aspx?space=1&num=1046 参考博客:http://hi.baidu.com/cloudygoose/item ...
随机推荐
- Lua - 基础语法
Hello World 交互式编程 Lua 交互式编程模式可以通过命令 lua -i 或 lua 来启用: [huey@huey-K42JE lua]$ lua Lua 5.1.4 Copyright ...
- Sophos UTM WebAdmin存在未明漏洞
...
- OJ——华为编程题目:输入字符串括号是否匹配
package t0815; /* * 华为编程题目:输入字符串括号是否匹配 * 若都匹配输出为0,否则为1 * 样例输入:Terminal user [name | number (1)] * 样例 ...
- String Shifting
我们规定对一个字符串的shift操作如下:略去.shift(string, x) = string(0 <= x < n). 分析:一看这题,这不很简单么,直接模拟判断,但是这套路有这么简 ...
- WIX: Hide installed program from the Add/Remove Programs window.
Reference article : How to hide an entry in the Add/Remove Programs applet? In Wix source files, set ...
- Mac或Linux中对Android抓包
转载说明 本篇文章可能已经更新,最新文章请转:http://www.sollyu.com/mac-or-linux-android-caught/ 说明 首先要到http://www.charlesp ...
- c++学习笔记1(c++简介)
c++和c的不同: 1,c++是c的扩充. 2,在解决问题时思维方式的不同.(c++采用面向对象思维,c面向结构思维) 面向结构思维:将一个大程序拆分成一个个很小的结构.每个结构完成一个或多个功能,所 ...
- OpenJudge/Poj 2013 Symmetric Order
1.链接地址: http://bailian.openjudge.cn/practice/2013 http://poj.org/problem?id=2013 2.题目: Symmetric Ord ...
- remastersys修改默认选项
1.vim /etc/remastersys/isolinux/isolinux.cfg.vesamenu default vesamenu.c32prompt 0timeout 100 menu t ...
- 分页 page
1.根据条件计算出数据的总数 2.import(page类); 3.实例化分页类 4.设置相关的参数 5.调用show()方法 // 导入分页类 import('ORG.Util.Page');$p ...