本文共 1327 字,大约阅读时间需要 4 分钟。
- 题目不难就是函数的求导,但是坑感觉还是蛮多的。
- 求导按系数和指数为对应的一对,但是要判断当指数为0时,说明当前为常数,求导的结果为0,不用输出。
- “零多项式”指系数和指数都为 0 0,也就是说当该多项式为求导的结果为0时输入。比如输入是【0 0】【1 0】等情况,感觉这块官方描述不清楚,难以理解。
- 对于c++没有split这个函数真是难受,直接采用while(cin>>a>>b)这种输入格式,回车结束没有结果,还必须要按一下
Ctrl + Z
,所以本次采用istringstream输入。 - 对于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 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!