PAT-A1002
1002 A+B for Polynomials (25)
Polynomials多项式,exponents指数,coefficients系数
输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,后面每两个数表示一项,分别表示幂次和系数。
输出:两个多项式的和,格式与输入一样
思路一:
1.定义一个double类型的数组p[1111](长度大于1000),其中片[n]表示幂次为n的项的系数,初始化为0。定义一个int型的变量count表示非零项的个数,初始化为0;
2.先按输入格式读入第一个多项式,再读入第二个多项式,并将对应相同幂次项的系数直接加到第一个多项式上;
3.循环搜索p[]数组中值不为0的个数,赋值给count,作为第一个数字输出;再通过循环以此从高位到低位进行搜索数组中不为0值,将对应的位数和值分别按格式输出(printf("%d %.1f",i,p[i]))。
#include <stdio.h>
#include<string.h>
//输入:两行数据,每行表示一个多项式:第一个数字表示非零项的数目,
//后面每两个数表示一项,分别表示幂次和系数。
//输出:两个多项式的和,格式与输入一样 int main(){ const int MAX_N=;
double a=0.0;
int k,n=,count=,i;//k:输入的非零项数,n:幂次,a:系数,count:和的非零项数
double p[]={};//声明时使用{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=;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
} //输入第二行数据
scanf("%d",&k);
for(i=;i<k;i++){
scanf("%d %lf",&n,&a);
p[n]+=a;
} for(i=;i<MAX_N;i++){
if(p[i]){
count++;
}
} printf("%d",count);
for(i=MAX_N-;i>=;i--){
if(p[i]){
printf(" ");
printf("%d %.1f",i,p[i]);
}
} return ;
}
碰到的报错:
const int MAX_N=1000;
double p[MAX_N]={0};
[Error] variable-sized object may not be initialized [错误]可变大小的对象不能初始化;
正确写法:double p[1000]={0};
PAT-A1002的更多相关文章
- PAT A1002 A+B for Polynomials(25)
AC代码 转载自https://www.cnblogs.com/zjutJY/p/9413766.html #include <stdio.h> #include<string.h& ...
- PAT题目AC汇总(待补全)
题目AC汇总 甲级AC PAT A1001 A+B Format (20 分) PAT A1002 A+B for Polynomials(25) PAT A1005 Spell It Right ( ...
- 【PAT】A1002 A+B for Polynomials
仅有两个要注意的点: 如果系数为0,则不输出,所以输入结束以后要先遍历确定系数不为零的项的个数 题目最后一句,精确到小数点后一位,如果这里忽略了,会导致样例1,3,4,5都不能通过
- PAT甲级——A1002 A+B for Polynomials
This time, you are supposed to find A+B where A and B are two polynomials. Input Specification: Each ...
- PAT甲级题解分类byZlc
专题一 字符串处理 A1001 Format(20) #include<cstdio> int main () { ]; int a,b,sum; scanf ("%d %d& ...
- 《转载》PAT 习题
博客出处:http://blog.csdn.net/zhoufenqin/article/details/50497791 题目出处:https://www.patest.cn/contests/pa ...
- PAT Judge
原题连接:https://pta.patest.cn/pta/test/16/exam/4/question/677 题目如下: The ranklist of PAT is generated fr ...
- PAT/字符串处理习题集(二)
B1024. 科学计数法 (20) Description: 科学计数法是科学家用来表示很大或很小的数字的一种方便的方法,其满足正则表达式[+-][1-9]"."[0-9]+E[+ ...
- PAT 1041. 考试座位号(15)
每个PAT考生在参加考试时都会被分配两个座位号,一个是试机座位,一个是考试座位.正常情况下,考生在入场时先得到试机座位号码,入座进入试机状态后,系统会显示该考生的考试座位号码,考试时考生需要换到考试座 ...
- PAT 1040. 有几个PAT(25)
字符串APPAPT中包含了两个单词"PAT",其中第一个PAT是第2位(P),第4位(A),第6位(T):第二个PAT是第3位(P),第4位(A),第6位(T). 现给定字符串,问 ...
随机推荐
- UML视频
https://www.bilibili.com/video/av34973179/?p=1 北京 圣思园 UML视频
- Browser进程和浏览器内核(Renderer进程)的通信过程
看到这里,首先,应该对浏览器内的进程和线程都有一定理解了,那么接下来,再谈谈浏览器的Browser进程(控制进程)是如何和内核通信的, 这点也理解后,就可以将这部分的知识串联起来,从头到尾有一个完整的 ...
- YUV数据详解
http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html YUV格式有两大类:planar和packed.对于planar的YUV ...
- 关于Unix哲学
http://www.ruanyifeng.com/blog/2009/06/unix_philosophy.html 这几天,我在看Unix,发现很多人在谈"Unix哲学",也就 ...
- IOS开发之——IOS模拟器调试蓝牙BLE
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/zhenyu5211314/article/details/24399887 因为在iPhone 4s ...
- Object c的NSString的使用,创建,拼接和分隔,子string,substring
main: // // main.m // StringDemo // // Created by 千 on 16/9/22. // Copyright © 2016年 kodulf. All ...
- build.gradle中的dependencies
demo_myna中的build.gradle中的dependencies是依赖项目.比如之前开发的一个项目A,现在新的项目B要使用项目A的功能,那么把项目A作为类库关联进来,这样b就能直接使用A的功 ...
- vue常用事件
一.事件监听 1. banner_edit.$watch('bannerForm.type', function () { //执行其他代码 console.log(666); this.banner ...
- spring 跨域 CORS (Cross Origin Resources Share) 跨域
Spring提供了三种方式跨域 1.CorsFilter 过滤器 2.<mvc:cors> Bean(全局,推荐使用) 3.@CrossOrigin注解 以上三种方式本质都是用来配置Cor ...
- P2939 改造路
P2939 [USACO09FEB]改造路Revamping Trails 裸地分层图最短路 培训的时候考到过 但是-- 我考试的时候写了个基本没有的树状数组优化.然后顺利的被卡到了70分(裸的spf ...