1010. 一元多项式求导 (25)

来源:互联网 发布:js设置input可以编辑 编辑:程序博客网 时间:2024/04/30 15:13

先贴一下这个题目:


这个题目,看上去并不复杂。

第一眼,感觉有些像链表的一元多项式的求和,当时只想了这个思路,但是没有去实践,第二天,时间的时候出了问题,发现链表的输入没有办法停止,还是出在了对题目的理解上,不知道当指数为0的时候就不再录入。现在想一下,如果仍然使用链表,用while(1)无限循环,然后当有0,录入进去后,停止创建结点,似乎也是可行的,但是始终还是很麻烦,有一种被坑了的感觉;

然后,(还没有在网上搜索如何循环录入整数),用字符数组来代替,当getchar录到回车的时候,停止输入,看似是个好方法,但是没有考虑到负数的问题;

接着,我还是选择用整数数组,发现了这一点,可以用无限循环中加if判断语句来在录入指数0后及时跳出。这样一来,这个题目的大体框架完成了。得到了19分得主体成绩。

然而,还是部分正确的。所以再去看了看题目,发现题目提到了一个零多项式的问题,然而在我的程序中,并没有体现这个问题。

零多项式是什么?这是第一个问题。

原谅我数学(啊,拍砖)

零多项式即多项式=0,所以,按照题目要求来看,零多项式的指数系数都是0,需要表示为“0 0”,我在第一次思考的时候,是受题目中例子的影响,直接将常数项所得的求导结果不做表示,没有想到,这与零多项式是不同的,这个思维上的错误与我上学以来在理科问题上犯得许多错误是一样的!

于是我仅仅添加了刚开始为零多项式的情况,但是,还需要考虑到,如果变成零多项式会是什么结果?那么从哪里会变成零多项式呢,即常数项,又添加了条件

做题需看题,思考需仔细,另外,注意判题结果显示,两个错误所用时间相同,可推知两个错误在同一个判断条件下生成,这是一个小技巧。

贴上代码:

再高兴地放上完全正确的图啦!

0 0