寝癖頭の解法

学習中の覚え書きを投稿、更新していきます。

paizaラーニング: Javaによる「二重ループメニュー 」問題集(基本編)

paizaラーニングのレベルアップ問題集「二重ループメニュー 」からの出典です。
paiza.jp
Javaによる「二重ループメニュー 」問題集(基本編)と、それらの提出コードの解答例です。

僕が作成、提出したコードは、以下のとおりです。

・STEP: 1 指定された数字までの出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 1 指定された数字までの出力 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i = 1; i <= n; i++){
            if(i == 1){
                System.out.print(i);
            }else{
                System.out.print(" " + i);
            }
        }
    }
}
・STEP: 2 指定された数字までの出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 2 指定された数字までの出力 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i = 1; i <= n; i++){
        System.out.println(i);
        }
    }
}
・STEP: 3 指定された行数の数字の出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 3 指定された行数の数字の出力 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        String s = "1 2 3 4 5";
        for(int i = 0; i < n; i++){
            System.out.println(s);
        }
    }
}
・STEP: 4 指定された範囲・行数の数字の出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 4 指定された範囲・行数の数字の出力
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        for(int x = 0; x < k; x++){
            for(int y = 1; y <= n; y++){
                if(y < n){
                    System.out.print(y + " ");
                }else{
                    System.out.println(y);
                }
            }
        }
    }
}
・STEP: 5 二次元配列の出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 5 二次元配列の出力 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        int[][] num = new int[n][k];
        for(int i = 0; i < n; i++){
            for(int j = 0; j < k; j++){
                num[i][j] = sc.nextInt();
                if(j < k-1){
                    System.out.print(num[i][j] + " ");
                }else{
                    System.out.println(num[i][j]);
                }
            }
        }
    }
}
・STEP: 6 二次元配列での要素の検索

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 6 二次元配列での要素の検索 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        int[][] num = new int[n][k];
        for(int i = 0; i < n; i++){
            for(int j = 0; j < k; j++){
                num[i][j] = sc.nextInt();
                if(num[i][j] == 1){
                    System.out.print((i+1) + " " + (j+1));
                }
            }
        }
    }
}
・STEP: 7 二次元配列の最大の要素

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 7 二次元配列の最大の要素 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        int[][] num = new int[n][k];
        int max = 0;
        for(int i = 0; i < n; i++){
            for(int j = 0; j < k; j++){
                num[i][j] = sc.nextInt();
                if(max < num[i][j]){
                    max = num[i][j];
                }
            }
        }
        System.out.println(max);
    }
}
・STEP: 8 二次元配列の行ごとの和

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 8 二次元配列の行ごとの和 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        int[][] num = new int[n][k];
        for(int i = 0; i < n; i++){
            int ans = 0;
            for(int j = 0; j < k; j++){
                num[i][j] = sc.nextInt();
                ans = ans + num[i][j];
            }
            System.out.println(ans);
        }
    }
}
・STEP: 9 さまざまな長さの配列の和

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 9 さまざまな長さの配列の和  
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i = 0; i < n; i++){
            int m = sc.nextInt();
            int ans = 0;
            for(int j = 0; j < m; j++){
                int num = sc.nextInt();
                ans = ans + num;
            }
            System.out.println(ans);
        }
    }
}
・STEP: 10 階段の出力

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
STEP: 10 階段の出力 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        for(int i = 0; i < n; i++){
            for(int j = 1; j <= i + 1; j++){
                if(j < i+1){
                    System.out.print(j + " ");
                }else{
                    System.out.println(j);
                }
            }
        }
    }
}
・FINAL問題: 二重ループ:基本編 積の最大

paiza.jp

/*
Javaによる「二重ループメニュー 」問題集(基本編)
FINAL問題: 二重ループ:基本編 積の最大 
https://paiza.jp/works/mondai
提出コードの解答例
https://neguse-atama.hatenablog.com
*/
import java.util.Scanner;
public class Main {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        int n = sc.nextInt();
        int k = sc.nextInt();
        int foo[] = new int[n];
        int bar[] = new int[k];
        for(int i = 0; i < n; i++){
            int num = sc.nextInt();
            foo[i] = num;
        }
        for(int i = 0; i < k; i++){
            int num = sc.nextInt();
            bar[i] = num;
        }
        int ans = -10000;
        for(int i = 0; i < n; i++){
            for(int j = 0; j < k; j++){
                int foobar = foo[i]*bar[j];
                if(foobar > ans){
                    ans = foobar;
                }
            }
        }
        System.out.println(ans);
    }
}

paizaラーニングのレベルアップ問題集については、ユーザー同士で解答を教え合ったり、コードを公開したりするのは自由としています。
また授業や研修、教材などにも利用できるそうです。