zoukankan      html  css  js  c++  java
  • PAT甲级1009水题飘过

    题目分析:简单的多项式的模拟乘法,你可以假设未知数为x,exp为x的指数,coe为x的系数,则很容易就把答案推算出来,注意答案是从指数的高往低输出,同时要注意的是这是多项式的乘法,虽然指数的范围只有0~1000,但是乘法结果的指数范围为0~2000,注意数组定义的范围,开小了会产生段错误(下标越界,访问了不该访问的内存)

     1 #include<iostream>
     2 using namespace std;
     3 
     4 struct Node{
     5     int exp;        //指数 
     6     double coe;        //系数 
     7 }k[2005], a[15], b[15];        //对于k数组来说下标即对应指数 所以exp对于k数组来说其实是多余的 
     8 
     9 //初始化结构体数组 
    10 void init(){
    11     for(int i = 1; i <= 10; i++){
    12         a[i].exp = 0;
    13         a[i].coe = 0;
    14         b[i].exp = 0;
    15         b[i].coe = 0;
    16     } 
    17     for(int i = 0; i <= 2000; i++){
    18         k[i].exp = 0;
    19         k[i].coe = 0;
    20     }
    21 }
    22 
    23 int main(){
    24     int n1, n2;
    25     while(scanf("%d", &n1) != EOF){
    26         init();
    27         for(int i = 1; i <= n1; i++){
    28             scanf("%d%lf", &a[i].exp, &a[i].coe);
    29         }
    30         scanf("%d", &n2);
    31         for(int i = 1; i <= n2; i++){
    32             scanf("%d%lf", &b[i].exp, &b[i].coe);
    33         }
    34         for(int i = 1; i <= n1; i++){
    35             for(int j = 1; j <= n2; j++){
    36                 //对a数组中的每一位都与b数组的每一位相乘,将结果存储到k数组中
    37                 //得到指数 
    38                 int exp = a[i].exp + b[j].exp;
    39                 //得到系数
    40                 double coe = a[i].coe * b[j].coe;
    41                 k[exp].coe += coe; 
    42             }
    43         }
    44         //统计一遍有多少项是有意义的(系数不为0)
    45         int num = 0;
    46         for(int i = 2000; i >= 0; i--){
    47             if(k[i].coe != 0) num++;
    48         } 
    49         printf("%d", num);
    50         //从高位到低位输出都有的系数不为0的情况下的多项式的每一项
    51         for(int i = 2000; i >= 0; i--){
    52             if(k[i].coe != 0){
    53                 printf(" %d %0.1lf", i, k[i].coe);
    54             }
    55         } 
    56         printf("
    ");
    57     }
    58     return 0;
    59 } 
  • 相关阅读:
    Data Load Performance Optimization
    SAPBW数据仓库增量更新(转载)
    BW数据源深入研究
    SAP BW权限
    利用HTTP协议的特性进行拒绝服务攻击的一些构思
    Python自省(反射)指南 转自http://www.cnblogs.com/huxi/archive/2011/01/02/1924317.html
    交换网络中的sniffer讨论>基于交换网络的ARP spoofing sniffer
    Windows中使用精确计时器
    HTTP POST和GET的区别
    HTTP 状态代码 错误列表
  • 原文地址:https://www.cnblogs.com/findview/p/11646645.html
Copyright © 2011-2022 走看看