zoukankan      html  css  js  c++  java
  • pat甲级 1002 A+B for Polynomials

    首先是生僻词汇:polynomials 多项式    exponents 指数     respectively 分别

    这道题的大致意思是每次测试一组测试用例,一组测试用例有两个一个是一行,每一行包含一个多项式的信息:

    K N1 aN1 N2 aN2…NK aNK

    K是多项式的非零项的数量,aNi和Ni(i = 1 2⋯,K)分别是指数和系数。1<=k<=10,0<=Nk<=1000。

    这道题最大的坑就是这道题只给出了Ni的取值范围,没有给出aNi的取值范围,所以需要过滤掉相加后aNi为0的这种情况。另外题目给出的就是标准多项式,在读取第一个数的时候根本不需要考虑多个Ni的值相同的情况,我多写了,不过也是对的。

    下面是ac代码:

    #include<iostream>
    #include<cstdio>
    #include<map>
    using namespace std;
    
    int main(){
        map<int,double> mapp;
        int a;
        cin>>a;
        double x,y;
        int flag=0;
        for(int i=0;i<a;i++){
            cin>>x>>y;
            if(!mapp[x]){
                flag++;
                mapp[x]=y;
            }
            else {
            mapp[x]+=y;
            if(mapp[x]==0){
                flag--;
            } 
            } 
        } 
        int b;
        cin>>b;
        for(int i=0;i<b;i++){
            cin>>x>>y;
            if(!mapp[x]){
                flag++;
                mapp[x]=y;
            }
            else {
            mapp[x]+=y;
            if(mapp[x]==0){
                flag--;
            } 
            } 
        }
        cout<<flag;
        for(int i=1000;i>=0;i--){
            if(mapp[i]!=0){
                printf(" %d %.1lf",i,mapp[i]);
            }
        }
    } 
  • 相关阅读:
    Spring (4)框架
    Spring (3)框架
    Spring (2)框架
    javaSE面试题总结 java面试题总结
    分层结构
    三次握手
    17_网络编程
    16_多线程
    Ecplise中指定tomcat里Web项目发布文件
    Web 项目没有发布到我们安装的tomcat目录下
  • 原文地址:https://www.cnblogs.com/fromzore/p/9953186.html
Copyright © 2011-2022 走看看