模拟一遍即可。

注意一些特殊情况,见代码。

 #include<stdio.h>
#include<stdlib.h>
#include<math.h>
#include<algorithm>
#include<string.h>
using namespace std; const int maxn = ; struct Ploy{
int cnt;//项的数目
int coe[ maxn ];//各项系数
int exp[ maxn ];//各项指数
}a;
struct Ploy2{
int coe1,coe2;
int exp1,exp2;
}b;
struct Ploy3{
int coe,exp;
}tmp; bool Judge( int aim ){
//bool f = false;
for( int i=a.cnt-;i>=;i-- ){
if( a.coe[i]!=&&a.exp[i]>=aim ){
//f = true;
return true ;
}
}
return false;
} void solve( int n,int k ){
//ans.cnt = 0;
while( ){
//if( Judge(k)==false ) break;
int i;
for( i=a.cnt-;i>=;i-- ){
if( a.coe[i]!= ){
tmp.coe = a.coe[i];
tmp.exp = a.exp[i];
break;
}
}
if( tmp.exp<k ) break;
int delta_exp = tmp.exp-k;
int delta_coe = tmp.coe;//商
b.exp1 = tmp.exp,b.coe1 = tmp.coe;
b.exp2 = delta_exp,b.coe2 = delta_coe;
//bool f1 = false,f2 = false;
for( int i=;i<a.cnt;i++ ){
if( a.exp[i]==b.exp1 ){
a.coe[i] -= b.coe1;
//f1 = true;
}
if( a.exp[i]==b.exp2 ){
a.coe[i] -= b.coe2;
//f2 = true;
}
}
}
} int main(){
//freopen("in.txt","r",stdin);
//freopen("out.txt","w",stdout);
int n,k;
while( scanf("%d%d",&n,&k)== ){
if( n==k&&k==- ) break;
a.cnt = ;
for( int i=;i<=n;i++ ){
a.cnt ++;
scanf("%d",&a.coe[i]);
a.exp[i] = i;
}
if( k== ){
puts("");
continue;
}
//printf("input\n");
bool f = false;
for( int i=;i<a.cnt;i++ ){
if( a.coe[i]!= ){
f = true;
break;
}
}
if( f==false ) {
puts("");
continue;
}//多项式全为0
if( k>n ){
for( int i=;i<a.cnt;i++ ){
if( i== ) printf("%d",a.coe[i]);
else printf(" %d",a.coe[i]);
}
printf("\n");
continue;
}//商为0
//printf("solve\n");
solve( n,k );
f = false;
for( int i=;i<a.cnt;i++ ){
if( a.coe[i]!= ){
f = true;
break;
}
}
if( f==false ) {
puts("");
continue;
}//刚好整除
int pos = a.cnt-;
for( int i=a.cnt-;i>=;i-- ){
if( a.coe[i]!= ){
pos = i;
break;
}
}
for( int i=;i<=pos;i++ ){
if( i== ) printf("%d",a.coe[i]);
else {
printf(" %d",a.coe[i]);
}
}
printf("\n");
}
return ;
}

POJ2527+多项式除法的更多相关文章

  1. Re.多项式除法/取模

    前言 emmm又是暂无 前置 多项式求逆 多项式除法/取模目的 还是跟之前一样顾名思义] 给定一个多项式F(x),请求出多项式Q(x)和R(x),满足F(x)=Q(x)∗G(x)+R(x),R项数小于 ...

  2. P4512 【模板】多项式除法

    思路 多项式除法板子 多项式除法 给出\(A(x)\)和\(B(x)\),求一个\(n-m\)次的多项式\(D(x)\),一个\(m-1\)次多项式\(R(x)\),满足 \[ A(x)=B(x)D( ...

  3. xdoj-1211 (尧老师要教孩子解方程) :多项式除法

    想法: 1 由于所有a[i] 是不为0的整数 所以解x是整数 2 其次解是an的约数 3 分解a[n] 用多项式除法判断约数是否为整式的解 #include<cstdio> #includ ...

  4. 【Codechef】Random Number Generator(多项式除法)

    题解 前置技能 1.多项式求逆 求\(f(x)\*g(x) \equiv 1 \pmod {x^{t}}\) 我们在t == 1时,有\(f[0] = frac{1}{g[0]}\) 之后呢,我们倍增 ...

  5. 洛谷.4512.[模板]多项式除法(NTT)

    题目链接 多项式除法 & 取模 很神奇,记录一下. 只是主要部分,更详细的和其它内容看这吧. 给定一个\(n\)次多项式\(A(x)\)和\(m\)次多项式\(D(x)\),求\(deg(Q) ...

  6. [洛谷P4512]【模板】多项式除法

    题目大意:给定一个$n$次多项式$F(x)$和一个$m$次多项式$G(x)$,请求出多项式$Q(x),R(x)$,满足: 1. $Q(x)$次数为$n-m$,$R(x)$次数小于$m$2. $F(x) ...

  7. 【Luogu4512】多项式除法(FFT)

    题面 洛谷 题解 模板题... 我直接蒯我写的东西... 这个除法是带余除法,所以并不能直接求逆解决. 要求的就是给定两个多项式\(A(x),B(x)\),其项数为\(n,m\) 求解一个\(n-m\ ...

  8. 题解 P4512 【【模板】多项式除法】

    题目地址 前言 原理有大佬写了 所以蒟蒻只讲下本题的代码细节 我看懂的大佬博客:博客地址 因为可能知道了大致的步骤还有很多细的地方不理解导致写的时候要花很久并且看到大佬们好像都是用递归写的希望能有帮助 ...

  9. Luogu4512 【模板】多项式除法(多项式求逆+NTT)

    http://blog.miskcoo.com/2015/05/polynomial-division 好神啊! 通过翻转多项式消除余数的影响,主要原理是商只与次数不小于m的项有关. #include ...

随机推荐

  1. jquery 事件委托绑定click的使用方法

    直接绑定ul的click事件  代码如下 复制代码 $("ul").click(function(e) 例子  代码如下 复制代码 $(function(){ //$(" ...

  2. PHP获取本周第一天和最后一天

    //本周的第一天和最后一天  代码如下 复制代码 $date=new DateTime();$date->modify('this week');$first_day_of_week=$date ...

  3. jQuery-ui treegird 使用

    在实际应用中可能会碰到不同的需求,比如会根据每行不同的参数或属性设置来设置同列不同的editor类型,这时原有的例子就显的有点太过简单,不能实现我们的需求,现在应用我在项目中的操作为例,显示下实现同列 ...

  4. spring3.2以后的cglib的jar包问题

    关于cglib的jar包官方的文档上有这么一段话 Note For this dynamic subclassing to work, the class that the Spring contai ...

  5. (poj 3177) Redundant Paths

    题目链接 :http://poj.org/problem?id=3177 Description In order to <= F <= ,) grazing fields (which ...

  6. Linux 小记录

    <1>bzero 原型:extern void bzero(void *s, int n);用法:#include <string.h> 功能:置字节字符串s的前n个字节为零. ...

  7. antuomake 生成configure的使用

    configure 作为编译配置脚本,有大量选项可供不同编译需求,这些选项直 接作用到最终生成的Makefile文件 问题:automake默认的gcc编译选项为-Wall -O2 -g,怎么改为我们 ...

  8. 手机网站中 限制图片宽度 JS图片等比例缩放

    <script type="text/javascript"> $(function () { var w = $(".content-co").w ...

  9. 为什么Facebook要将视频从Flash全面迁移到HTML5?

    英文原文:Why we chose to move to HTML5 video 编者按:Facebook 前端高级工程师 Daniel Baulig 解释了 Facebook 为什么要将视频全面迁移 ...

  10. 获取JAVA对象占用的内存大小

    介绍两种获取JAVA对象内存大小的方法. 第一种:Instrumentation 简介: 使用java.lang.instrument 的Instrumentation来获取一个对象的内存大小.利用I ...