题意:给出f(x),g(x),h(x)的 (最高次幂+1)的值,以及它们的各项系数,求f(x)*g(x)/h(x)的余数. 这里多项式的系数只有1或0,因为题目要求:这里多项式的加减法是将系数相加/减后再模2,这样其实也就可以用异或运算来代替加减法. 思路:看代码吧,水题一个,主要在于把除法转化成减法,一次一次减就行. #include <iostream> #include <stdio.h> #include <string.h> using namespace s…
Modular multiplication of polynomials Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 4377   Accepted: 1980 Description Consider polynomials whose coefficients are 0 and 1. Addition of two polynomials is achieved by 'adding' the coeffici…
题目来源:http://poj.org/problem?id=1060 题目大意: 考虑系数为0和1的多项式.两个多项式的加法可以通过把相应次数项的系数相加而实现.但此处我们用模2加法来计算系数之和.一个实例: (x^6 + x^4 + x^2 + x + 1) + (x^7 + x + 1) = x^7 + x^6 + x^4 + x^2 同样,多项式的减法我们在求系数之差时也用模2减法,例如: (x^6 + x^4 + x^2 + x + 1) - (x^7 + x + 1) = x^7 +…
Modular multiplication of polynomials Time Limit: 1000MS   Memory Limit: 10000K Total Submissions: 3239   Accepted: 1459 Description Consider polynomials whose coefficients are 0 and 1. Addition of two polynomials is achieved by 'adding' the coeffici…
这是一个相对简单的模拟,因为运算规则已经告诉了我们,并且比较简单,不要被吓到…… 思路:多项式除以另外一个多项式,如果能除,那么他的最高次一定被降低了,如果最高次不能被降低,那说明已经无法被除,就是题目要求输出的膜了,降低最高次的方法很简单,只要被除式的最高次 >= 除式的最高次,就将除式的最高次升高到与被除式一样高,然后让被除式减去它,直到不满足上述关系为止. 代码如下: #include<cstdio> #include<algorithm> #include<io…
In data structure Hash, hash function is used to convert a string(or any other type) into an integer smaller than hash size and bigger or equal to zero. The objective of designing a hash function is to "hash" the key as unreasonable as possible.…
B - Housewife Wind POJ - 2763 因为树剖+线段树只能解决点权问题,所以这种题目给了边权的一般要转化成点权. 知道这个以后这个题目就很简单了. 怎么转化呢,就把这个边权转化为两点之间深度更大的那个就可以了. 还要注意的是,这个公共祖先的点权要被减去. #include <cstdio> #include <cstring> #include <algorithm> #include <iostream> #include <a…
S - Making the Grade POJ - 3666 这个题目要求把一个给定的序列变成递增或者递减序列的最小代价. 这个是一个dp,对于这个dp的定义我觉得不是很好想,如果第一次碰到的话. 上网看了一下题解,dp[i][j]表示前面 i 位已经是有序的了,第 i+1 位变成第j大的最小代价. 这个转移可以保证有序这个条件. 递增递减d两次. 这个题目要离散化,为什么要离散化呢,推荐博客 我以前就是感觉数据大就要离散化,不然数组存不下,不过看了这篇题解感觉他讲的很对啊. #include…
http://poj.org/problem?id=1060 题意:多项式的运算的题目,不过这个运算有个特点,就是只要是同项的多项式,无论相加还是相减,都为0,给你三个多项式,分别为a,b,c. 要你求(a*b)%c. 思路:首先吧a*b算出来,然后,求某个项数乘以c会等于a*b的,然后把a*b的最大的幂降到c以下,求出来的就是答案. #include <stdio.h> #include <iostream> #include <string.h> #define m…
题意: 给一个多项式,求它在实数域内的可分解性. 分析: 代数基本定理. 代码: //poj 2126 //sep9 #include <iostream> using namespace std; int main() { int n; scanf("%d",&n); int a,b,c; scanf("%d%d%d",&a,&b,&c); if(n>2) puts("NO"); else if…