[JAVA] Es gibt mehr als eine richtige Codierungsantwort

Einführung Ich bin ein Student der freien Künste und lerne die Java-Sprache. Vor kurzem interessiere ich mich für AtCoder, einen Inhalt, der um Codierungsfähigkeiten konkurrieren kann, und ich bin dabei, frühere Fragen zu lösen.

Kann dieser Code intelligenter gemacht werden? Ich habe versucht, den Code, auf den ich mich bezog, auf meine eigene Weise intelligenter zu machen. ..

Das Problem ist Atcoders B-Crane und Turtles Rodelproblem. https://atcoder.jp/contests/abc170/tasks/abc170_b

qiita.turukame


import java.util.Scanner;
public class Main{
  public static void main(String[] args){
    Scanner scan = new Scanner(System.in);
    int x = scan.nextInt();
    int y = scan.nextInt();
    int flag = 0;
    for (int i = 0; i <= x; i++){
      if ((y-2*i)%4 == 0 && (y - 2 * i)/4 == x-i){
        flag++;
        System.out.println("Yes");
        break;
      }
    }
    if  (flag == 0){
      System.out.println("No");
    }
  }
}

Dies,,,, (Codeüberprüfung von saka1029!)

qiita.turukamekai


public class main {
static boolean tsurukame(int x, int y) {
    return y % 2 == 0 && y >= 2 * x && 4 * x >= y;
}

public static void main(String[] args) {
    Scanner scan = new Scanner(System.in);
    int x = scan.nextInt();//Tier
    int y = scan.nextInt();//Nummer
    System.out.println(tsurukame(x, y) ? "yes" : "no");
}
}


Einfallsreichtum Abschließend habe ich es in die for-Anweisung gepackt. Durch Einfügen (Y / 4 <= X && Y% 2 == 0) kommt es vor, dass die Anzahl der Zeilen gerade und ja ist, aber nach dem Einfügen von Y% 2 == 0 und dem Nachweis, dass es gerade ist. Dann können Sie die Verarbeitung mit einer ungeraden Zahl verhindern. Ist es richtig? .. ..

Schlussfolgerung Wenn Sie codieren möchten, können Sie kompakt codieren! Interessant! !! !! !!

Recommended Posts

Es gibt mehr als eine richtige Codierungsantwort
Pointcut-Ausdruck Ich möchte mehr als einen angeben