zoukankan      html  css  js  c++  java
  • PAT A1002 A+B for Polynomials(25)

    AC代码
    转载自https://www.cnblogs.com/zjutJY/p/9413766.html

    #include <stdio.h>
    #include<string.h>
    //输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,
    //后面每两个数表示一项,分别表示幂次和系数。
    //输出:两个多项式的和,格式与输入一样
    
    int main(){
    
        const int MAX_N=1111;
        double a=0.0;
        int k,n=0,count=0,i;//k:输入的非零项数,n:幂次,a:系数,count:和的非零项数
        double p[1111]={0};//声明时使用{0}初始化为全0
        //double p[MAX_N];
        //memset(p,0,MAX_N);//使用memset方法,注意要加string.h头文件 
        
    //    for(i=MAX_N-1;i>=0;i--){
    //        printf("%.1f",p[i]); 
    //    }    
        
        //输入第一行数据 
        scanf("%d",&k);
        for(i=0;i<k;i++){
            scanf("%d %lf",&n,&a);
            p[n]+=a;
        }
        
        //输入第二行数据 
        scanf("%d",&k);
        for(i=0;i<k;i++){
            scanf("%d %lf",&n,&a);
            p[n]+=a;
        }
        
        for(i=0;i<MAX_N;i++){
            if(p[i]){
                count++;
            }
        } 
        
        printf("%d",count);
        for(i=MAX_N-1;i>=0;i--){
            if(p[i]){
                printf(" ");
                printf("%d %.1f",i,p[i]);
            }
        }
        
        return 0;
    }
    

    自己写的, 一个都没有通过

    #include <cstdio>
    #include <algorithm>
    #define N 1010
    
    using namespace std;
    
    int main() {
        #ifdef ONLINE_JUDGE
        #else
            freopen("1.txt", "r", stdin);
        #endif // ONLINE_JUDGE
        double num[N] = {0.0};
        int big = 0, t = 0;
        for(int i = 0; i < 2; i++) {
            int n;
            scanf("%d", &n);
            for(int i = 0; i < n; i++) {
                int a;
                double b;
                scanf("%d %1f", &a, &b);
    			num[a] += b;
                //if(big < a) swap(big, a);
                //t++;
            }
        }
        for(int i = 0; i < N; i++) {
    		if(num[i] != 0) {
    			t++;
    		}
    	}
    
        printf("%d", t);
        for(int i = N; i >= 0; i--) {
            if(num[i] != 0.0){
                printf(" %d %.1f", i, num[i]);
            }
        }
    	return 0;
    }
    
  • 相关阅读:
    一文详解ORB-SLAM3
    模块、进程、线程回调函数的逆向
    EPT的开启与处理
    VT MSR、CR、 Exception、#PF
    VT MTF VM-Exit
    VT技术对于除零异常的拦截与派发到3号中断
    异常与中断
    KVM_SET_SREGS 64位设置错误
    SQL注入实验学习笔记
    Pwn之简单patch
  • 原文地址:https://www.cnblogs.com/isChenJY/p/11240726.html
Copyright © 2011-2022 走看看