【UOJ #20】【NOIP 2014】解方程
并不会做。。。然后看题解。。。。。。。
对a取模,避免了高精度带来的复杂度,然后再枚举x判断是否满足模意义下等于0。
取5个模数,我直接抄的别人的_(┐「ε:)_。时间复杂度$O(nm)$。
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int p[5] = {11261,19997,22877,21893,14843}; char s[10003];
int n, m, a[5][103], cal[5][30003], ans[1000003], anslen = 0; bool pd(int x) {
for(int tmp = 0; tmp < 5; ++tmp)
if (cal[tmp][x % p[tmp]] != 0) return false;
return true;
} int main() {
scanf("%d%d", &n, &m);
int len;
bool fu;
for(int i = 0; i <= n; ++i) {
scanf("%s", s + 1);
len = strlen(s + 1);
fu = false;
for(int tmp = 0; tmp < 5; ++tmp)
if (s[1] == '-') {fu = true; a[tmp][i] = 0;}
else a[tmp][i] = s[1] - '0';
for(int tmp = 0; tmp < 5; ++tmp) {
for(int j = 2; j <= len; ++j)
a[tmp][i] = (a[tmp][i] * 10 + s[j] - '0') % p[tmp];
if (fu) a[tmp][i] = -a[tmp][i];
}
} for(int tmp = 0; tmp < 5; ++tmp) {
for(int x = 1; x <= p[tmp]; ++x) {
int ret = a[tmp][n];
for(int i = n - 1; i >= 0; --i)
ret = (ret * x + a[tmp][i]) % p[tmp];
cal[tmp][x] = ret;
}
} for(int i = 1; i <= m; ++i)
if (pd(i))
ans[++anslen] = i; printf("%d\n", anslen);
for(int i = 1; i <= anslen; ++i)
printf("%d\n", ans[i]);
return 0;
}
_(:з」∠)_
【UOJ #20】【NOIP 2014】解方程的更多相关文章
- [NOIp 2014]解方程
Description 已知多项式方程: a0+a1x+a2x^2+..+anx^n=0 求这个方程在[1, m ] 内的整数解(n 和m 均为正整数) Input 输入文件名为equation .i ...
- NOIp 2014 解方程 【数学/秦九韶算法/大数取膜】By cellur925
题目传送门 题意:求高次方程的解及其个数.其中 1° 我们知道,高次方程是没有求根公式的.但是利用逆向思维,我们可以进行“试根法”,因为题目中给出了所求根的范围.但是多项式系数过于吓人,达到了sxbk ...
- 【NOIP】提高组2014 解方程
[题意]已知n次方程(n<=100)及其所有系数(|ai|<=10^10000),求[1,m]中整数解的个数(m<=10^6). [算法]数论 [题解]如果f(x)=0,则有f(x) ...
- 【NOIP TG 解方程】
存代码: #include<cstdio> #include<cstdlib> #include<cstring> #include<iostream> ...
- vijos P1915 解方程 加强版
背景 B酱为NOIP 2014出了一道有趣的题目, 可是在NOIP现场, B酱发现数据规模给错了, 他很伤心, 哭得很可怜..... 为了安慰可怜的B酱, vijos刻意挂出来了真实的题目! 描述 已 ...
- [NOIP2014]解方程
3732 解方程 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 钻石 Diamond 题解 题目描述 Description 输入描述 Input Descrip ...
- 2017广东工业大学程序设计竞赛决赛 题解&源码(A,数学解方程,B,贪心博弈,C,递归,D,水,E,贪心,面试题,F,贪心,枚举,LCA,G,dp,记忆化搜索,H,思维题)
心得: 这比赛真的是不要不要的,pending了一下午,也不知道对错,直接做过去就是了,也没有管太多! Problem A: 两只老虎 Description 来,我们先来放松下,听听儿歌,一起“唱” ...
- Luogu 1351 NOIP 2014 联合权值(贪心,计数原理)
Luogu 1351 NOIP 2014 联合权值(贪心,计数原理) Description 无向连通图 G 有 n 个点,n-1 条边.点从 1 到 n 依次编号,编号为 i 的点的权值为 Wi, ...
- NOIP 2014 提高组 Day2
期望得分:100+60+30=190 实际得分:70+60+30=160 https://www.luogu.org/problem/lists?name=&orderitem=pid& ...
- 洛谷 题解 P2312 【解方程】
Problem P2312 [解方程] >>> record 用时: 1166ms 空间: 780KB(0.76MB) 代码长度: 2.95KB 提交记录: R9909587 > ...
随机推荐
- uboot 移植遇到的问题及解决方法(转)
http://blog.sina.com.cn/s/blog_988ec60801017iy3.html 一 在commond env_nand.c: In function 'saveenv': ...
- using关键字背后的故事!
using关键字的作用: 1:可以引入命名空间2:可以释放资源 *****不能使用using语句完全替换掉(try-catch-finally)语句(无法进行异常处理) 在出了using语句的{}后, ...
- [No000017]单词拼写记不住?试试这俩方法-单词拼写,怎么记又快又好?
- [No000005]C#注册表操作,创建,删除,修改,判断节点是否存在
//用.NET下托管语言C#操作注册表,主要内容包括:注册表项的创建,打开与删除.键值的创建(设置值.修改),读取和删除.判断注册表项是否存在.判断键值是否存在. //准备工作: //1:要操作注册表 ...
- 网络攻防比赛PHP版本WAF
这次去打HCTF决赛,用了这个自己写的WAF,web基本上没被打,被打的漏洞是文件包含漏洞,这个功能在本人这个waf里确实很是捉急,由于只是简单检测了..和php[35]{0,1},导致比赛由于文件包 ...
- luogu[1135]奇怪的电梯
题目描述 呵呵,有一天我做了一个梦,梦见了一种很奇怪的电梯.大楼的每一层楼都可以停电梯,而且第i层楼(1<=i<=N)上有一个数字Ki(0<=Ki<=N).电梯只有四个按钮:开 ...
- poj 3468
A Simple Problem with Integers Time Limit: 5000MS Memory Limit: 131072K Total Submissions: 90736 Acc ...
- Oracle 使用MERGE INTO 语句更新数据
/*Merge into 详细介绍MERGE语句是Oracle9i新增的语法,用来合并UPDATE和INSERT语句.通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配 ...
- mysql下mysqladmin日常管理命令总结
mysqladmin 工具的使用格式:mysqladmin [option] command [command option] command ......参数选项:-c number 自动运行次数统 ...
- C语言:枚举类型
整数常量的符号名称... #include <stdio.h> enum _bool {false,true}; int main(){ enum colors { red, orange ...