1010 一元多项式求导 (25 分)
发布日期:2021-08-22 02:44:45 浏览次数:1 分类:技术文章

本文共 1327 字,大约阅读时间需要 4 分钟。

  1. 题目不难就是函数的求导,但是坑感觉还是蛮多的。
  2. 求导按系数和指数为对应的一对,但是要判断当指数为0时,说明当前为常数,求导的结果为0,不用输出。
  3. “零多项式”指系数和指数都为 0 0,也就是说当该多项式为求导的结果为0时输入。比如输入是【0 0】【1 0】等情况,感觉这块官方描述不清楚,难以理解。
  4. 对于c++没有split这个函数真是难受,直接采用while(cin>>a>>b)这种输入格式,回车结束没有结果,还必须要按一下Ctrl + Z,所以本次采用istringstream输入。
  5. 对于pyhon这种有split分割函数的也要说明一下,split()什么参数都不加是默认以空格进行分割的,中间的多个空格都会当成一个。split(' ')显示指定以一个空格进行切分,本题的输入也太坏了,每个数字直接的空格可能含有多个,这个坑找了好久。

C++ 代码

#include 
#include
#include
#include
#include
using namespace std;int main() { string buff; getline(cin, buff); int a, b; vector
res; istringstream n(buff); while (n >> a >> b) { if (b != 0) { res.push_back(a*b); res.push_back(b - 1); } } if (res.size() == 0) { cout << "0 0" << endl; return 0; } for (int i = 0; i < res.size(); i++) { if (i != 0) cout << " "; cout << res[i]; } cout << endl; return 0;}复制代码

python3代码

def main():    s = input().split()    i = 0    res = []    while i < len(s):        if(int(s[i + 1]) == 0):            break        m = int(s[i]) * int(s[i + 1])        n = (int(s[i + 1])) - 1        res.append(str(m))        res.append(str(n))        i += 2    if(len(res) == 0):        print('0 0')    else:        print(' '.join(res).strip())main()复制代码

转载于:https://juejin.im/post/5ce3fba06fb9a07eec599f4f

转载地址:https://blog.csdn.net/weixin_33734785/article/details/91440329 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:服务端入坑——从建立自己的线上网站开始
下一篇:java基础(六):RabbitMQ 入门

发表评论

最新留言

路过按个爪印,很不错,赞一个!
[***.219.124.196]2024年04月06日 13时15分56秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章