AcWing - 515 - 解方程 = 简单数学

2021-01-30 10:12

阅读:782

标签:write   top   using   namespace   else   include   而不是   https   整数   

https://www.acwing.com/problem/content/517/

给一个多项式,求他的整数根。

首先稳妥的办法应该是整一大堆质数,然后用中国剩余定理合并(当然不是真的合并)。

奇怪一点的就用几个就可以了,卡掉的概率极低,加上是OI其实没问题的。

但是这题卡常,要用秦九韶公式卡掉一半的乘法(和取模),还卡读入,真的垃圾题。

注意读入的时候要%p而不是-p,找到一个写法的bug不错。

#include 
using namespace std;
typedef long long ll;

const int MAXP = 1;
const int p = 19260817;

int ap[105];

inline int read() {
    int b = 0;
    char c = getchar();
    while(true) {
        if(c == '-' || (c >= '0') && (c = '0' && c = p)
            cur %= p;
        c = getchar();
    }
    if(b)
        cur = (p - cur) % p;
    return cur;
}

inline void write(int x) {
    if(x = 1; --i) {
            cur = (cur + ap[i]) * x;
            if(cur >= p)
                cur %= p;
        }
        cur = (cur + ap[0]) % p;
        if(cur == 0)
            ans[++atop] = x;
    }

    write(atop);
    putchar('\n');
    for(int i = 1; i 

AcWing - 515 - 解方程 = 简单数学

标签:write   top   using   namespace   else   include   而不是   https   整数   

原文地址:https://www.cnblogs.com/Inko/p/11664463.html


评论


亲,登录后才可以留言!