1.结果填空 (满分13分)
2.结果填空 (满分39分)
3.代码填空 (满分27分)
4.程序设计(满分45分)
5.程序设计(满分71分)
6.程序设计(满分105分)
 


1.标题:三角形面积

已知三角形三个顶点在直角坐标系下的坐标分别为:
(2.3, 2.5)
(6.4, 3.1)
(5.1, 7.2)

求该三角形的面积。

注意,要提交的是一个小数形式表示的浮点数。
要求精确到小数后3位,如不足3位,需要补零。
 

 

 

2.标题:阅兵方阵

x国要参加同盟阅兵活动。
主办方要求每个加盟国派出的士兵恰好能组成 2 个方阵。
x国发现弱小的 y国派出了130人的队伍,他们的士兵在行进中可以变换2种队形:
 130 = 81 + 49 = 9^2 + 7^2
 130 = 121 + 9 = 11^2 + 3^2

x国君很受刺激,觉得x国面积是y国的6倍,理应变出更多队形。
于是他发号施令:
我们要派出一支队伍,在行进中要变出 12 种队形!!!

手下人可惨了,要忙着计算至少多少人才能组成 12 种不同的双方阵。
请你利用计算机的优势来计算一下,至少需要多少士兵。

(ps: 不要失去信心,1105人就能组成4种队形了)

注意,需要提交的是一个整数,表示至少需要士兵数目,不要填写任何多余的内容。

//160225

import java.util.Scanner;

public class Main {
    
    static Scanner sc = new Scanner(System.in);
    static long[] a = new long[1000005];
    
    public static void main(String[] args) {
        
        for(long i=1;i<=1000000;i++){
            a[(int) i]=i*i;
        }
        int f=0;
        for(int i=1;i<=1000000;i++){
            int c=0;
            for(int j=1;j<=1000;j++){
                if(a[j]>i/2) break;
                int x=(int) Math.sqrt(i-a[j]);
                if(a[x]==i-a[j]) c++;
            }
            if(c==12){
                f=i;
                break;
            }
        }
        System.out.println(f);
    }
}
阅兵方阵

相关文章: