POJ-数据结构与算法-线性表 多项式加法

本文介绍了如何使用线性表解决POJ中的一个算法问题——多项式加法。在最初的尝试中,由于直接使用大数组导致了运行错误。文章提供了作者的源代码,分享了解决此问题的思路和方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一开始把这一道题想得太简单了,直接用一个50W的数组结果RE.


提交人 班级 结果 内存 时间 代码长度 语言 提交时间
mollnn   Accepted 664kB 17ms 834 B G++ 3分钟前
mollnn   Runtime Error 2328kB 8ms 448 B G++ 4小时前
mollnn   Runtime Error 408kB 0ms 447 B G++ 4小时前


提供我的源代码,供参考:

#include 
  
   
#include 
   
    
#include 
    
     
#include 
     
      
#include 
      
       
#include 
       
         using namespace std; struct item { int k; int n; }; int compare(const void *a,const void *b) { return (*(item*)a).n-(*(item*)b).n; } int main() { //定义变量 int i,j,n,tk,tn,fo,be; item i_tmp; //读入总数 cin>>n; //循环开始 for(i=0;i
        
         >tk>>tn; if(tn<0)break; a[j].k=tk; a[j].n=tn; } for(;j<400;j++) { cin>>tk>>tn; if(tn<0)break; a[j].k=tk; a[j].n=tn; } qsort(a,j+1,sizeof(item),compare); for(;j>=0;j--) { int s=a[j].k; tn=a[j].n; while((j>0)&&(a[j].n==a[j-1].n)) s+=a[--j].k; if(s==0)continue; printf("[ %d %d ] ",s,tn); } printf("\n"); } return 0; }
        
       
      
     
    
   
  

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值