360会社2018校招技術総合C巻オンライン試験プログラミング問題

2919 ワード

注意:権利侵害があれば、すぐに削除すると知らせてください.
プログラミング問題|20.0分1/3
画板時間制限:C/C++言語1000 MS;その他言語3000 MSメモリ制限:C/C++言語65536 KB;その他の言語589824 KBのテーマの説明:沫璃は1つの画板があって、画板は100行ごとに100画素の点の正方形を抽象化することができます.沫璃は画板に絵を描き、彼女は全部でn回描き、毎回矩形に色を塗った.沫璃は全部で何画素点が彼女に色を塗られたか知りたい.1つの画素点がk回塗布されると、k個の画素点が色を塗布されたと考えられる.
入力:
1行目の数T(T<=100)は、データ群数を表す.各データ群について、1行目に1つの整数n、(1<=n<=100)次のn行について、4つの整数x 1,y 1,x 2,y 2(1<=x 1<=x 2<=100,1<=y 1<=y 2<=100)が矩形の2つの対角に対応する画素点の座標を表す.
しゅつりょく
各グループのデータについて、1行出力し、泡璃が全部で何画素点を塗ったかを示します.
例:
2 2 1 1 2 3 2 2 3 3 2 1 1 3 3 1 1 3 3
サンプル出力
10 18
解析:重ね合わせは計算しないので簡単ですが、対角線で面積を計算して加算すると点数になります.
package face360;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class test1 {
    public static void main(String[] arges){
        int i,j,k;
        int[] a1 = new int[4];
        Scanner scanner = new Scanner(System.in);
        int totalPoint = 0;//           
        int point = 0;//            
        int m = scanner.nextInt();
        int[] b1 = new int[m];
        for(i=0;iint n =  scanner.nextInt();
            for(j=0;jfor(int p=0;p<4;p++) { //    
                    a1[p] = scanner.nextInt();
                }
                point = (a1[2]-a1[0]+1)*(a1[3]-a1[1]+1);
                totalPoint += point;
            }
            b1[i] = totalPoint;
        }
        System.out.println(Arrays.toString(b1));
    }
}