結果
問題 |
No.366 ロボットソート
|
ユーザー |
![]() |
提出日時 | 2016-05-07 16:21:50 |
言語 | Java (openjdk 23) |
結果 |
AC
|
実行時間 | 217 ms / 2,000 ms |
コード長 | 843 bytes |
コンパイル時間 | 3,431 ms |
コンパイル使用メモリ | 75,060 KB |
実行使用メモリ | 42,728 KB |
最終ジャッジ日時 | 2024-12-29 17:51:58 |
合計ジャッジ時間 | 8,407 ms |
ジャッジサーバーID (参考情報) |
judge4 / judge5 |
(要ログイン)
ファイルパターン | 結果 |
---|---|
other | AC * 23 |
ソースコード
package yuki_coder; import java.util.Scanner; public class No_366 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int N = sc.nextInt(); int K = sc.nextInt(); long[] val = new long[N]; for(int i = 0; i < N; i++){ val[i] = sc.nextLong();//それぞれの値を受け取る } int Output = 0;//出力セット int MVal = N - K - 1;//MaxValue flag: for(int i = 0; i <= N; i++){ for(int j = 0; j <= MVal; j++){ if(0 > MVal){ break flag;//0以下だと動かせないのでbreak } if(val[j] > val[j + K]){//ソート long memory = val[j]; val[j] = val[j + K]; val[j + K] = memory; Output++; } } } for(int i = 1; i < N; i++){//数字のソートの確認 if(val[i - 1] > val[i]){ Output = -1; break; } } System.out.println(Output);//結果を表示 } }