diff --git a/rsuzuki/README.md b/rsuzuki/README.md new file mode 100644 index 0000000000000000000000000000000000000000..796c95d353f961f632c60d81ef2bdf62fa8ea5ff --- /dev/null +++ b/rsuzuki/README.md @@ -0,0 +1,2 @@ +# Paiza +knoda用 diff --git a/rsuzuki/src/C144_win.java b/rsuzuki/src/C144_win.java new file mode 100644 index 0000000000000000000000000000000000000000..01397b65de303d29482aa377d87441f5b2b4850a --- /dev/null +++ b/rsuzuki/src/C144_win.java @@ -0,0 +1,98 @@ +package paiza_c; + +import java.util.Scanner; + +enum RockPaperScissorsType { + Rock("G"), Paper("P"), Scissors("C"); + + private final String caption; + + private RockPaperScissorsType(final String caption) { + this.caption = caption; + } + + public static RockPaperScissorsType fromCaption(final String string) { + for (final RockPaperScissorsType type : values()) { + if (type.caption.equals(string)) { + return type; + } + } + return null; + } +} + +// 入力を受け取るクラス +final class Input { + private final Scanner scanner; + + public Input(final Scanner scanner) { + this.scanner = scanner; + } + + public int readGameCount() { + final int count = scanner.nextInt(); + scanner.nextLine(); + return count; + } + + public RockPaperScissorsType readHand() { + return RockPaperScissorsType.fromCaption(scanner.next()); + } +} + +// じゃんけんのロジックのクラス +final class Logic { + + public boolean Win(final RockPaperScissorsType handA, final RockPaperScissorsType handB) { + if (handA == RockPaperScissorsType.Rock && handB == RockPaperScissorsType.Scissors) { + return true; + } else if (handA == RockPaperScissorsType.Paper && handB == RockPaperScissorsType.Rock) { + return true; + } else if (handA == RockPaperScissorsType.Scissors && handB == RockPaperScissorsType.Paper) { + return true; + } + return false; + } +} + +// 結果に集計するクラス +final class Result { + private int winCount; + + public Result() { + this.winCount = 0; + } + + // 勝利数をインクリメントする + public void incrementresult() { + this.winCount++; + } + + // 現在の勝利数を取得する + public int getresult() { + return winCount; + } +} + +public class C144_win { + public static void main(String[] args) { + final Scanner sc = new Scanner(System.in); + final Input input = new Input(sc); + final Logic logic = new Logic(); + final Result result = new Result(); + + final int N = input.readGameCount(); + + for (int i = 0; i < N; i++) { + final RockPaperScissorsType playerAHand = input.readHand(); + final RockPaperScissorsType playerBHand = input.readHand(); + + if (logic.Win(playerAHand, playerBHand)) { + result.incrementresult(); + } + } + + System.out.println(result.getresult()); + + } +}