PTA L2-018 多项式A除以B

news2024/11/16 20:36:39

这仍然是一道关于A/B的题,只不过A和B都换成了多项式。你需要计算两个多项式相除的商Q和余R,其中R的阶数必须小于B的阶数。

输入格式:

输入分两行,每行给出一个非零多项式,先给出A,再给出B。每行的格式如下:

N e[1] c[1] ... e[N] c[N]

其中N是该多项式非零项的个数,e[i]是第i个非零项的指数,c[i]是第i个非零项的系数。各项按照指数递减的顺序给出,保证所有指数是各不相同的非负整数,所有系数是非零整数,所有整数在整型范围内。

输出格式:

分两行先后输出商和余,输出格式与输入格式相同,输出的系数保留小数点后1位。同行数字间以1个空格分隔,行首尾不得有多余空格。注意:零多项式是一个特殊多项式,对应输出为0 0 0.0。但非零多项式不能输出零系数(包括舍入后为0.0)的项。在样例中,余多项式其实有常数项-1/27,但因其舍入后为0.0,故不输出。

输入样例:

4 4 1 2 -3 1 -1 0 -1
3 2 3 1 -2 0 1

输出样例:

3 2 0.3 1 0.2 0 -1.0
1 1 -3.1

代码:

#include <cstdio>
#include <iostream>
#include <algorithm>
#include <cstring>
#include <string>
#include <cmath>

using namespace std;

const int N = 1000010;

double a[N],b[N];
double s[N],y[N];

void print(double t[],int mt)
{
    int cnt = 0;
    for(int i = mt;i >= 0;i--)
        if(abs(t[i]) + 0.05 > 0.1)//系数不为0
            cnt++;
    if(!cnt)
    {
        puts("0 0 0.0");
        return;
    }
    printf("%d",cnt);
    for(int i = mt;i >= 0;i--)//0.05
        if(abs(t[i]) + 0.05 > 0.1)//系数不为0
            printf(" %d %.1lf",i,t[i]);
    puts("");
}

int main()
{
    int n = 0;
    scanf("%d",&n);
    int ma = 0,mb = 0;
    for(int i = 0; i < n;i++)
    {
        int x = 0,z = 0;
        scanf("%d%d",&z,&x);
        a[z] = x;
        ma = max(ma,z);
    }
    scanf("%d",&n);
    for(int i = 0; i < n;i++)
    {
        int x = 0,z = 0;
        scanf("%d%d",&z,&x);
        b[z] = x;
        mb = max(mb,z);
    }

    int ms = 0;
    while(ma >= 0 && ma >= mb)//指数判断
    {
        int z = ma - mb;
        double x = a[ma] / b[mb];
        s[z] = x;
        ms = max(ms,z);

        for(int i = mb; i >= 0;i--)
        {
            if(abs(b[i]) + 0.05 > 0.1)//系数不为0
            {
                a[i + z] -= b[i] * x;
            }
        }
        
        while(ma >= 0 && abs(a[--ma]) + 0.05 < 0.1);//系数不为0
        
    }
    print(s,ms);
    print(a,ma);
    return 0;
}

结果:

 

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1526432.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

了解抖音小程序与抖音小店的区别

首先&#xff0c;从功能和定位上来看&#xff0c;抖音小店是抖音官方推出的一种功能&#xff0c;专为商家提供在抖音平台上销售商品的工具。而抖音小程序则是一种无需下载即可使用的应用&#xff0c;类似于微信小程序&#xff0c;但主要在抖音、头条、极速版头条等平台上运行。…

逻辑回归LogisticRegression quickstart

本文将用可视化思路理解逻辑回归 数学背景 比如我们认定一个的值只可能在[0, 1], 那当小于0.5&#xff0c;我们认为他就是a&#xff0c;当大于0.5&#xff0c;我们认为他就是b 数据集 使用鸢尾花数据集 4个特征值3个类别 二分类&#xff0c;单维度 只使用一个特征X ir…

Linux docker3--数据卷-nginx配置示例

一、因为docker部署服务都是以最小的代价部署&#xff0c;所以通常在容器内部很多依赖和命令无法执行。进入容器修改配置的操作也比较麻烦。本例介绍的数据卷作用就是将容器内的配置和宿主机文件打通&#xff0c;之后修改宿主机的配置文件就相当于修改了docker进程的配置文件&a…

“灯塔”——一个让人爱不释手的前端监测工具

引言 "灯塔"&#xff08;fee&#xff09;作为一个前端监控系统&#xff0c;通常具备捕获浏览器端错误、性能监控、用户行为跟踪等功能。它的主要目的是帮助开发者了解他们的网站或应用在用户端的表现&#xff0c;以及时发现并解决问题。下面是关于这种系统的一些关键…

【web开发网页制作】Html+Css+js网页制作轮播效果个人网页主题(4页面附代码)

个人网页制作目录 涉及知识写在前面一、网页主题二、网页效果Page1、我的首页Page2、文经风采&#xff08;学校&#xff09;Page3、美图分享Page4、热剧推送视频效果 三、网页架构与技术3.1 脑海构思3.2 整体布局3.3 技术说明书 四、网页源码HtmlCss 作者寄语 涉及知识 轮播效…

9. 编程常见错误归类

编程常见错误归类 9.1 编译型错误9.2 链接型错误9.3 运行时错误 9.1 编译型错误 编译型错误⼀般都是语法错误&#xff0c;这类错误⼀般看错误信息就能找到⼀些蛛丝马迹的&#xff0c;双击错误信息也能初步的跳转到代码错误的地方或者附近。编译错误&#xff0c;随着语言的熟练…

显隐特征融合的指静脉识别网络

文章目录 显隐特征融合的指静脉识别网络总结摘要介绍显隐式特征融合网络(EIFNet)掩膜生成模块(MGM)掩膜特征提取模块(MFEM)内容特征提取模块(CFEM)特征融合模块(FFM) THUFVS实验和结果数据集实现细节评估掩膜生成模型消融实验FFM模块门控层Batch Size损失函数超参数选择 论文 …

java 线上生产问题排查思路,jvm内存溢出实例重启原因排查生产实战

java jvm内存溢出实例重启排查生产实战&#xff08;使用VisualVM&#xff09; 背景 项目组线上生产环境不定期的发生内存爆满然后实例重启&#xff0c;实例发布上线后实例内存不断增长最后维持在百分之九十多&#xff0c;十分危险。因此我参与到了排查中&#xff0c;本篇博客将…

2258: 【搜索】【广度优先】最少转弯问题

题目描述 给出一张地图&#xff0c;这张地图被分为nm&#xff08;n,m<100&#xff09;个方块&#xff0c;任何一个方块不是平地就是高山。平地可以通过&#xff0c;高山则不能。现在你处在地图的&#xff08;x1,y1&#xff09;这块平地&#xff0c;问&#xff1a;你至少需要…

二、SQL基础学习(函数、约束、事务)

目录 1、函数1.1、字符串函数1.2、数值函数1.3、日期函数1.4 、流程函数 2、约束2.1、外键约束2.2、删除/更新行为 3、事务3.1、事务的四大特性3.2、并发事务问题3.2、事务的隔离级别 1、函数 1.1、字符串函数 # concat select concat(Hello, MySql);# lower select lower(He…

第六十回 吴用智赚玉麒麟 张顺夜闹金沙渡-飞桨科学计算套件PaddleScience

吴用说我到北京让卢俊义上山&#xff0c;小菜一碟&#xff0c;但是我需要一个粗心大胆的同伴一起去。黑旋风李逵自告奋勇&#xff0c;答应了吴用三件事才被允许去&#xff1a;一、 不喝酒 二、扮做道童听吩咐 三、不说话当哑巴。 两人拜做算命的道士和道童&#xff0c;来到北京…

zookeeper集群安装部署和集群异常处理

准备jdk和zookeeper安装包【官网即可下载】 zookeeper-3.5.1-alpha.tar.gz jdk1.7.0_8020200612.tar 准备三台linux虚拟机【具体以项目实际需要为准】&#xff0c;并安装jdk和zookeeper 虚拟机地址如下&#xff1a;194.1.1.86&#xff08;server.1&#xff09;、194.1.1.74…

Alma Linux - Primavera P6 EPPM 安装及分享

引言 继上一期发布的Rocky Linux版环境发布之后&#xff0c;近日我又制作了基于Alma Enterprise Linux 的P6虚拟机环境&#xff0c;同样里面包含了全套P6 最新版应用服务 此虚拟机仅用于演示、培训和测试目的。如您在生产环境中使用此虚拟机&#xff0c;请先与Oracle Primaver…

2024-03-18 作业

作业要求&#xff1a; 1> 将广播发送端和接收端各实现一遍 2> 将组播发送端和接收端各实现一遍 3> 将流式域套接字的服务器端和客户端各实现一遍 1&#xff1a;将广播发送端和接收端各实现一遍 运行代码&#xff1a; 服务端&#xff1a; 客户端&#xff1a; 运行截…

FREERTOS任务调度和切换

我们已经学会了 FreeRTOS 的任务创建和删除&#xff0c;挂起和恢复等基本操作&#xff0c;并且也学习了分析FreeRTOS 源码所必须掌握的知识&#xff1a;列表和列表项。但是任务究竟如何被创建、删除、挂起和恢复的&#xff1f;系统是怎么启动的等等这些我们还不了解&#xff0c…

html--花瓣

代码 <!DOCTYPE html> <html lang"en" ><head> <meta charset"UTF-8"> <title>Petals</title><link rel"stylesheet" href"css/style.css"></head><body><div class"…

探索ChatGPT时代下的下一代信息检索系统:机遇与挑战

1 Introduction 2022 年 11 月 30 日&#xff0c;OpenAI 推出了 ChatGPT&#xff0c;这是一款由先进的 GPT3.5 和更高版本的 GPT-4 生成语言模型提供支持的 AI 聊天机器人应用程序。该应用迅速吸引了全球超亿用户&#xff0c;创下了产品快速传播的新纪录。 它能够以对话的方式…

Linux docker2--镜像及容器操作-nginx部署示例

一、上一篇已经完成了docker的基础环境搭建&#xff0c;和docker的安装。不清楚的小伙伴可以自己找上一篇看一下。本例以部署nginx为例展示 二、镜像相关 1、切换docker的镜像源为阿里云 命令&#xff1a; sudo mkdir -p /etc/docker sudo tee /etc/docker/daemon.json <&l…

数据库管理-第161期 数据库,走着瞧(20240318)

数据库管理161期 2024-03-18 数据库管理-第161期 数据库&#xff0c;走着瞧&#xff08;20240318&#xff09;MySQLSACC走着瞧RACAIOps 总结 数据库管理-第161期 数据库&#xff0c;走着瞧&#xff08;20240318&#xff09; 作者&#xff1a;胖头鱼的鱼缸&#xff08;尹海文&am…

php7.3.4连接sqlserver(windows平台)

前言 有个项目需要手上laravel连接客户的sqlserver数据库读取数据&#xff0c;故在本地开发的lnmp环境中&#xff0c;php需要增加扩展 过程 从微软官网下载sqlsrv扩展,注意注意php版本&#xff0c;下载地址 解压的文件会有nts和ts两个版本&#xff0c;本地打开phpinfo查看 将…