Time Limit: 1s
Memory Limit: 128MB
p1, p2 다항식을 입력받아 p1+p2, p1-p2, p1*p2의 결과를 찾아라.
* Line 1 : p1 다항식의 차수 d1 (1~100 범위의 정수)
* Line 2 : 공백으로 구분된 (d1 + 1)개의 계수들 (절댓값이 1000 이하인 정수)
* Line 3 : p2 다항식의 차수 d2 (1~100 범위의 정수)
* Line 4 : 공백으로 구분된 (d2 + 1)개의 계수들 (절댓값이 1000 이하인 정수)
* Line 1 : 공백으로 구분된 p1+p2 결과 다항식의 계수들
* Line 2 : 공백으로 구분된 p1-p2 결과 다항식의 계수들
* Line 3 : 공백으로 구분된 p1*p2 결과 다항식의 계수들
#include <stdio.h> #define MAX(a,b) (((a)>(b))?(a):(b)) #define MAX_DEGREE 201 #define POLY_ADD 0 #define POLY_SUB 1 #define POLY_MUL 2 typedef struct { int degree; int coef[MAX_DEGREE]; } polynomial; YOUR_CODE int main() { polynomial p1, p2, p3; int i; scanf("%d", &p1.degree); for (i = 0 ; i <= p1.degree ; i++) scanf("%d", &p1.coef[i]); scanf("%d", &p2.degree); for (i = 0 ; i <= p2.degree ; i++) scanf("%d", &p2.coef[i]); p3 = poly_arithmetic(p1, p2, POLY_ADD); poly_print(p3); p3 = poly_arithmetic(p1, p2, POLY_SUB); poly_print(p3); p3 = poly_arithmetic(p1, p2, POLY_MUL); poly_print(p3); return 0; }
3 2 0 1 -3 2 1 -2 2
2 1 -1 -1 2 -1 3 -5 2 -4 5 -5 8 -6
c자료구조3장