poj 1060
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 me(x) memset(x,0,sizeof(x)) int a[],b[],c[],d[]; int main()
{
int n,ade,bde,cde,dde;
scanf("%d",&n);
while(n--)
{
me(a),me(b),me(c),me(d);
scanf("%d",&ade);
for(int j=--ade;j>=;j--) //这里是为了把幂和其位置相等,便于乘法计算。
scanf("%d",&a[j]);
scanf("%d",&bde);
for(int j=--bde;j>=;j--)
scanf("%d",&b[j]);
scanf("%d",&cde);
for(int j=--cde;j>=;j--)
scanf("%d",&c[j]);
for(int i=ade;i>=;i--)
for(int j=bde;j>=;j--)
{
if(a[i]&&b[j]){ //多项式的乘法,这里还要用上那个他给定你的多项式运算的规则。
if(d[i+j]) d[i+j]=;
else d[i+j]=;
}
}
dde=ade+bde; //d是a*b的答案。dde也就是说这个答案的最高次幂是多少。
while(dde>=cde) //把d的最高次幂比c小。
{
int tmp;
for(int i=cde;i>=;i--)
if(c[i]){
if(d[dde+i-cde]) d[dde+i-cde]=;
else d[dde+i-cde]=;
}
for(int i=dde;i>=;i--) //找d的最高次幂。
if(d[i]) {
dde=i;
break;
}
}
printf("%d",dde+);
for(int i=dde;i>=;i--)
printf(" %d",d[i]);
printf("\n");
}
return ;
}
poj 1060的更多相关文章
- POJ 1060 Modular multiplication of polynomials(多项式的加减乘除,除法转化成减法来求)
题意:给出f(x),g(x),h(x)的 (最高次幂+1)的值,以及它们的各项系数,求f(x)*g(x)/h(x)的余数. 这里多项式的系数只有1或0,因为题目要求:这里多项式的加减法是将系数相加/减 ...
- POJ 1060:Modular multiplication of polynomials
Modular multiplication of polynomials Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 4 ...
- A过的题目
1.TreeMap和TreeSet类:A - Language of FatMouse ZOJ1109B - For Fans of Statistics URAL 1613 C - Hardwood ...
- poj 1094 / zoj 1060 Sorting It All Out
Sorting It All Out Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 26876 Accepted: 92 ...
- POJ推荐50题
此文来自北京邮电大学ACM-ICPC集训队 此50题在本博客均有代码,可以在左侧的搜索框中搜索题号查看代码. 以下是原文: POJ推荐50题1.标记“难”和“稍难”的题目可以看看,思考一下,不做要求, ...
- POJ题目排序的Java程序
POJ 排序的思想就是根据选取范围的题目的totalSubmittedNumber和totalAcceptedNumber计算一个avgAcceptRate. 每一道题都有一个value,value ...
- POJ 题目分类(转载)
Log 2016-3-21 网上找的POJ分类,来源已经不清楚了.百度能百度到一大把.贴一份在博客上,鞭策自己刷题,不能偷懒!! 初期: 一.基本算法: (1)枚举. (poj1753,poj2965 ...
- (转)POJ题目分类
初期:一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. (4)递推. ...
- poj分类
初期: 一.基本算法: (1)枚举. (poj1753,poj2965) (2)贪心(poj1328,poj2109,poj2586) (3)递归和分治法. ( ...
随机推荐
- PHP 短连接生成
<?php #短连接生成算法 class Short_Url { #字符表 public static $charset = "0123456789ABCDEFGHIJKLMNOPQR ...
- 360chrome,google chrome浏览器使用jquery.ajax加载本地html文件
使用360chrome和google chrome浏览器加载本地html文件时,会报错,提示: XMLHttpRequest cannot load file:///Y:/jswg/code/html ...
- CentOS 与 RedHat 关系和区别
转自http://www.aixchina.net/club/archiver/tid-26784.html CentOS 发行版介绍 CentOS 是 Community ENTerprise Op ...
- ASP.NET Web API与Owin OAuth:调用与用户相关的Web API(非第三方登录)
授权完成添加属性 ClaimsIdentity oAuthIdentity = await CreateAsync(user/*userManager*/, OAuthDefaults.Authent ...
- Linux关于vm虚拟机复制后无法启动网卡
1.一个月前由于自己一直在开发PHP站点,所以把Linux抛出去很长时间没有碰,最近几天把Linux的一些捡起来, 但在我设置vm虚拟机由于在家里做的实验未做完,复制到U盘想到公司接着做没成像,系统是 ...
- Linux服务器管理: 系统的定时任务crond
cornd 是定时任务的守护进程 这个服务系统是默认启动的 [root@localhost/]#/etc/init.d/crond strat|restart|stop [root@localhos ...
- VTK初学一,a_Vertex图形点的绘制
系统:Win8.1 QT版本:2.4.2,Mingw VTK版本:6.3 2. main.cpp #ifndef INITIAL_OPENGL #define INITIAL_OPENGL #incl ...
- gcc 4.8.3 install centos
http://blog.csdn.net/xlx921027/article/details/17382643
- CSS3计数器的使用-遁地龙卷风
结合::before实现自定义列表 body { counter-reset:dnf; } div::before { content:counter(dnf) "."; coun ...
- MAC地址,使用java获取IP地址和MAC地址。
MAC地址,通常在http连接的项目中,来区分唯一客户端. MAC:六组十六进制字符组成. 如:E0-3F-49-AB-DB-EB IP:四组八位的二进制字符组成. 如:10.6.62.244 /** ...