PAT乙级:1010. 一元多项式求导 (Java)

PAT乙级:1010. 一元多项式求导 (Java)_第1张图片


这个题目需要注意一个很重要的题意:输入的时候是以指数递降方式。所以说如果最后一个是 x 0,那么就有可能,只有一个输入 是x 0。本人总是部分错误,最终看到这位大神的博客后ac了:小5555



import java.util.Scanner;


public class Main {

    public static void main(String[] args) {

        boolean print_blank=false;//判断是否继续加空格
        Scanner sc=new Scanner(System.in);
        while (sc.hasNext()) {
            int ratio=sc.nextInt();
            int index=sc.nextInt();
            if (ratio*index!=0) {//输出导数多项式非零项的系数和指数
                if(print_blank)
                {
                    System.out.print(" ");  
                }else { 
                    print_blank=true;  
                }
                System.out.print(ratio*index+" "+(index-1));
            }
        }
        if (print_blank==false) {//如果到达这里print_blank还是false说明输出部分一次也没有运行,一定是输出0 0
            System.out.println("0 0");
        }
        //输出
        sc.close();
    }

}

写算法题目用Java相对比较吃亏,但是目前我在练习使用Java语言,所以这一阵子多敲一些Java的,过一阵子要用C去写题目了,那样比较爽。祝大家编程顺利~
对了,Java的控制台结束输入也是Ctrl+Z

你可能感兴趣的:(Algorithm)