【PAT】2-2 一元多项式求

#include <iostream>
#include <algorithm>
#include <cstdlib>
#include <cstdio>
#include <string>
#include <cstring>
#include <cmath>
#include <ctime>
using namespace std;

#define read() freopen("in.txt", "r", stdin)
#define write() freopen("out.txt", "w", stdout)
#define rep( i , a , b ) for ( int i = ( a ) ; i <  ( b ) ; ++ i )
#define For( i , a , b ) for ( int i = ( a ) ; i <= ( b ) ; ++ i )
#define clr( a , x ) memset ( a , x , sizeof a )
#define cpy( a , x ) memcpy ( a , x , sizeof a )
#define max(a,b) (a>b)?(a):(b)
#define LL long long 

struct daoshu
{
	int n;
	int e;
};
daoshu temp[1002];
daoshu num[1002];
int main()
{
	read();
    int x,y;
    int index=0,k=0;
    while(scanf("%d%d",&x,&y)!=EOF)
    {
    	temp[index].n = x;
    	temp[index++].e = y;
    }
    for (int i = 0; i < index; ++i)
    {
    	if (temp[i].e)
    	{
    		num[k].n = temp[i].n*temp[i].e;
    		num[k++].e = temp[i].e - 1;
    	}
    }
    if (k == 0)
    {
    	printf("0 0\n");
    	return 0;
    }
    for (int i = 0; i < k; ++i)
    {
    	printf("%d %d",num[i].n,num[i].e);
    	if (i-k+1)
    	{
    		printf(" ");
    	}else
    	{
    		printf("\n");
    	}
    }
    return 0;

}

  

时间: 2024-11-16 05:25:56

【PAT】2-2 一元多项式求的相关文章

PAT:1010一元多项式求导 (25 )

PAT乙级的题目相对于甲级的题目较为简单,但是有时候也会有一两道题很奇怪,具有一定的逻辑难度,这道题就是一个例子. 先看一下题目: 010 一元多项式求导 (25 分)设计函数求一元多项式的导数.(注:x?n??(n为整数)的一阶导数为nx?n?1??.)输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过 1000 的整数).数字间以空格分隔.输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数.数字间以空格分隔,但结尾不能有多余空格.注意"零多项式"的指数和

PAT 乙级 1010 一元多项式求导 (25) C++版

1010. 一元多项式求导 (25) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. 输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数.数字间以空格分隔,但结尾不能有多余空格.注意"零多项式"的指数和系数都是0,但是表示为"

PAT:1010. 一元多项式求导 (25) 全错

#include<stdio.h> #include<stdlib.h> #include<algorithm> using namespace std; int main() { int arr[1111]; fill(arr,arr+1111,0); int n=0,tmp; while(scanf("%d",&tmp)!=EOF) //存储系数和指数,下标从0开始偶数为系数,奇数为指数 arr[n++]=tmp; for(int i=0

PAT:1010. 一元多项式求导 (25) AC

#include<stdio.h> #include<stdlib.h> #include<algorithm> using namespace std; int main() { int arr[2111]; fill(arr,arr+2111,0); int n=0,tmp; while(scanf("%d",&tmp)!=EOF) //存储系数和指数,下标从0开始偶数为系数,奇数为指数 arr[n++]=tmp; for(int i=0

pat(B) 1010. 一元多项式求导

代码: #include<iostream> #include<cstdio> #include<cstring> using namespace std; int Hash[1005]; int vis[1005]; int main() { memset(Hash,0,sizeof(Hash)); memset(vis,0,sizeof(vis)); int i; int c,e; while(scanf("%d%d",&c,&e

【PAT】B1010 一元多项式求导(25 分)

#include<cstdio> #include<vector> using namespace std; struct duo{ int xishu,zhishu; }M; int main(){ vector<duo> arr; while(scanf("%d %d",&M.xishu,&M.zhishu)!=EOF){ M.xishu*=M.zhishu; M.zhishu--; if(M.zhishu>=0) arr.

【PAT】B1010 一元多项式求导

在输入时就进行结果的计算,忽略常数项, 顺序输出 #include<cstdio> #include<vector> using namespace std; struct duo{ int xishu,zhishu; }M; int main(){ vector<duo> arr;//结构体向量 while(scanf("%d %d",&M.xishu,&M.zhishu)!=EOF){ M.xishu*=M.zhishu; M.z

PAT线性结构_一元多项式求导、按给定步长反转链表、出栈序列存在性判断

02-线性结构1. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. 输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数.数字间以空格分隔,但结尾不能有多余空格.注意“零多项式”的指数和系数都是0,但是表示为“0 0”. 输入样例: 3 4 -5 2 6 1 -2 0 输出样例: 12 3 -10 1 6 0 最简单的方式是用

PAT 1010. 一元多项式求导

1010. 一元多项式求导 (25) 设计函数求一元多项式的导数.(注:xn(n为整数)的一阶导数为n*xn-1.) 输入格式:以指数递降方式输入多项式非零项系数和指数(绝对值均为不超过1000的整数).数字间以空格分隔. 输出格式:以与输入相同的格式输出导数多项式非零项的系数和指数.数字间以空格分隔,但结尾不能有多余空格.注意"零多项式"的指数和系数都是0,但是表示为"0 0". 输入样例: 3 4 -5 2 6 1 -2 0 输出样例: 12 3 -10 1 6