计算计算思维综合训练-java

女生的网名这么多〃 提交于 2020-03-10 15:42:48

Java 循环

题目

成绩: 5 / 折扣: 0.8
题面描述:
大贤者福尔最近迷上了数学,他研究发现有些神奇的数似乎具有某种魔力。于是他开始研究自然数,发现某个范围内的一些数,经过一定规则运算后的和,等于另一个数按同样规则计算后的值。具体来说,给定不大于NN的整数a, b, c, d (1 \le a \le b \le c \le d \le N)a,b,c,d(1≤a≤b≤c≤d≤N),可能存在关系ax+bx+cx=dxa
x
+b
x
+c
x
=d
x
。福尔想知道在给定的范围NN中,有多少数能够满足这种关系?

输入:
输入数据有若干行,每行包括两个整数x, Nx,N, 2 \le x \le 3, 1 \le N \le 1002≤x≤3,1≤N≤100。

输出:
对每组测试数据,先输出样例编号Case c:,c为当前测试样例的组号,从1开始。随后按照a, b, ca,b,c的自然序依次输出结果。若不存在满足条件的数,则输出No such numbers.。
示例输入:
3 4
3 6

示例输出:
Case 1: No such numbers.
Case 2: 33+43+53=63

代码

// Author     :///
// Time       : 2020/3/10 10:58
// File       : Week_5.java
// Describe   : 
// IDE        : IntelliJ IDEA

import java.util.Scanner;

public class Week_5 {
    public static int IsContain(int c, int N, int sum, int x) {// c表示当前d的取值 N,x同题目 sum表示a b c计算的幂之
        int index = 0;
        for (int i = c; i <= N; i++) {
            if (sum == Math.pow(i, x)) {
                index = i;
                break;
            }
        }
        return index;
    }

    public static void main(String[] args) {
        Scanner in = new Scanner(System.in);
        int count = 1;
        while (in.hasNextInt()) {
            System.out.println("Case " + count + ":");
            count++;
            int x = in.nextInt();
            int N = in.nextInt();
            int d = 0;
            boolean falg = false;
            for (int a = 1; a <= N; a++) {
                for (int b = a; b <= N; b++) {
                    for (int c = b; c <= N; c++) {
                        int sum = (int) (Math.pow(a, x) + Math.pow(b, x) + Math.pow(c, x));
                        d = IsContain(c, N, sum, x);
                        if (d != 0) {
                            falg = true;
                            System.out.println(a + "^" + x + "+" + b + "^" + x + "+" + c + "^" + x + "=" + d + "^" + x);
                        }
                    }
                }
            }
            if (!falg) System.out.println("No such numbers.");
        }

        in.close();
    }
}
标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!