import java.util.Optional; import java.util.Scanner; import java.util.stream.Stream; public class Main { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); Hand myHand = Hand.of(Integer.parseInt(scanner.next())).get(); Hand opponentHand = Hand.of(Integer.parseInt(scanner.next())).get(); System.out.println(myHand.battle(opponentHand).toString()); } private enum Hand { Rock(0) { @Override public BattleResult battle(Hand hand) { switch (hand) { case Rock: return BattleResult.Drew; case Paper: return BattleResult.Lost; case Scissors: return BattleResult.Won; default: return BattleResult.Unknown; } } }, Scissors(1) { @Override public BattleResult battle(Hand hand) { switch (hand) { case Rock: return BattleResult.Lost; case Paper: return BattleResult.Won; case Scissors: return BattleResult.Drew; default: return BattleResult.Unknown; } } }, Paper(2) { @Override public BattleResult battle(Hand hand) { switch (hand) { case Rock: return BattleResult.Won; case Paper: return BattleResult.Drew; case Scissors: return BattleResult.Lost; default: return BattleResult.Unknown; } } }; private int num; Hand(int num) { this.num = num; } public static Optional of(int num) { return Stream.of(values()).filter(e -> (e.num == num)).findFirst(); } public abstract BattleResult battle(Hand hand); } private enum BattleResult { Won, Lost, Drew, Unknown } }