<パート2-ARAY>12.ガイダンス
1724 ワード
12.ガイダンス
<説明>
賢洙(ヒョンス)先生は、クラスの生徒の数学点数を上げるため、補習システムを構築しようとした.指導者(助けた学生)と指導者(助けた学生)がペアになり、指導者は指導者が数学を学ぶのを助けた.先生はM番の数学の試験の点数で指導者と指導者を決めます.
A学生が指導者であれば、B学生が指導者のパートナーであり、A学生はM回の数学テストでB学生より順位が高い.M回の数学の成績を取ったら、何回指導者と指導者のパートナーになれるかを印刷するプログラムを作成してください.
<入力>
1行目にはクラス生徒数N(1<=N<=20)とM(1<=M<=10)が与えられる.
2行目からは、M行において学生番号として数学的試験結果が与えられる.学生番号は一番前から1位2位...Nなどの順序で表現する.
1行N=4で、テスト結果が3.41であれば、3番が1位、4番が2位、1番が3位、2番が4位であることを示します.
<出力>
最初の行にペアリングが作成された合計数を出力します.
===================================================
<コード>
四重要はドアで解く.2人の学生に分けられる場合は、2を文として作成し、各試験で等級を比較し、他の2を文として答えを探す.点数を比較し、保存後の最後のより大きな回数が試験の回数と同じであれば、指導者と指導者の関係になることができます.
import java.util.ArrayList;
import java.util.Scanner;
public class Main {
public int solution(int exam,int student,int[][] array ) {
int answer=0;
for(int i=1; i<=student;i++) {
for(int j=1;j<=student;j++) {
int cnt=0;
for(int k=0;k<exam;k++) {
int s1=0,s2=0;
for(int l=0;l<student;l++) {
if(array[k][l]==i) s1=l;
if(array[k][l]==j) s2=l;
}
if(s1>s2) cnt++;
}
if (cnt == exam) answer++;
}
}
return answer;
}
public static void main(String[] args) {
Main main = new Main();
Scanner scan = new Scanner(System.in);
int student=scan.nextInt();
int exam=scan.nextInt();
int [][] array=new int[exam][student];
for(int i=0;i<exam;i++) {
for(int j=0;j<student;j++)
array[i][j]=scan.nextInt();
}
System.out.println(main.solution(exam,student,array));
}
}
<重要>
1)4のfor文の利用
Reference
この問題について(<パート2-ARAY>12.ガイダンス), 我々は、より多くの情報をここで見つけました https://velog.io/@seunghee127/섹션2-ARRAY-12.-멘토링テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol