题解 | #伟大奋斗#

[NOIP2009]多项式输出

https://ac.nowcoder.com/acm/contest/19305/1054


public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int[] arr = new int[n + 1];

        // 读取输入的系数
        for (int i = 0; i <= n; i++) {
            arr[i] = sc.nextInt();
        }

        StringBuilder sb = new StringBuilder();

        // 构建多项式字符串
        for (int i = 0; i <= n; i++) {
            if (arr[i] == 0) continue; // 跳过系数为0的项

            // 处理符号
            if (i > 0 && arr[i] > 0) {
                sb.append("+");
            } else if (arr[i] < 0) {
                sb.append("-");
            }

            // 处理系数
            if (Math.abs(arr[i]) != 1 || i == n) { // 最高次项系数为1时不输出系数
                sb.append(Math.abs(arr[i]));
            }

            // 处理变量部分
            if (i < n) { // 最后一项没有变量部分
                sb.append("x");
                if (n - i > 1) { // 指数大于1时输出指数
                    sb.append("^").append(n - i);
                }
            }
        }

        // 输出结果
        System.out.println(sb.toString());
        sc.close();
    }
}
全部评论

相关推荐

今天 18:49
同济大学 设计
点赞 评论 收藏
分享
许愿ssp的咸鱼很不想泡池子:import python as pyhton
点赞 评论 收藏
分享
评论
1
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务