diff --git a/Answers/40230112119/.gitignore b/Answers/40230112119/.gitignore
new file mode 100644
index 0000000..5ff6309
--- /dev/null
+++ b/Answers/40230112119/.gitignore
@@ -0,0 +1,38 @@
+target/
+!.mvn/wrapper/maven-wrapper.jar
+!**/src/main/**/target/
+!**/src/test/**/target/
+
+### IntelliJ IDEA ###
+.idea/modules.xml
+.idea/jarRepositories.xml
+.idea/compiler.xml
+.idea/libraries/
+*.iws
+*.iml
+*.ipr
+
+### Eclipse ###
+.apt_generated
+.classpath
+.factorypath
+.project
+.settings
+.springBeans
+.sts4-cache
+
+### NetBeans ###
+/nbproject/private/
+/nbbuild/
+/dist/
+/nbdist/
+/.nb-gradle/
+build/
+!**/src/main/**/build/
+!**/src/test/**/build/
+
+### VS Code ###
+.vscode/
+
+### Mac OS ###
+.DS_Store
\ No newline at end of file
diff --git a/Answers/40230112119/.idea/.gitignore b/Answers/40230112119/.idea/.gitignore
new file mode 100644
index 0000000..13566b8
--- /dev/null
+++ b/Answers/40230112119/.idea/.gitignore
@@ -0,0 +1,8 @@
+# Default ignored files
+/shelf/
+/workspace.xml
+# Editor-based HTTP Client requests
+/httpRequests/
+# Datasource local storage ignored files
+/dataSources/
+/dataSources.local.xml
diff --git a/Answers/40230112119/.idea/encodings.xml b/Answers/40230112119/.idea/encodings.xml
new file mode 100644
index 0000000..aa00ffa
--- /dev/null
+++ b/Answers/40230112119/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/40230112119/.idea/misc.xml b/Answers/40230112119/.idea/misc.xml
new file mode 100644
index 0000000..82dbec8
--- /dev/null
+++ b/Answers/40230112119/.idea/misc.xml
@@ -0,0 +1,14 @@
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/40230112119/.idea/vcs.xml b/Answers/40230112119/.idea/vcs.xml
new file mode 100644
index 0000000..94a25f7
--- /dev/null
+++ b/Answers/40230112119/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Answers/40230112119/pom.xml b/Answers/40230112119/pom.xml
new file mode 100644
index 0000000..5238ca9
--- /dev/null
+++ b/Answers/40230112119/pom.xml
@@ -0,0 +1,17 @@
+
+
+ 4.0.0
+
+ org.example
+ dfghjk
+ 1.0-SNAPSHOT
+
+
+ 17
+ 17
+ UTF-8
+
+
+
\ No newline at end of file
diff --git a/Answers/40230112119/src/main/java/org/example/Main.java b/Answers/40230112119/src/main/java/org/example/Main.java
new file mode 100644
index 0000000..a02700f
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/Main.java
@@ -0,0 +1,17 @@
+package org.example;
+
+//TIP To Run code, press or
+// click the icon in the gutter.
+public class Main {
+ public static void main(String[] args) {
+ //TIP Press with your caret at the highlighted text
+ // to see how IntelliJ IDEA suggests fixing it.
+ System.out.printf("Hello and welcome!");
+
+ for (int i = 1; i <= 5; i++) {
+ //TIP Press to start debugging your code. We have set one breakpoint
+ // for you, but you can always add more by pressing .
+ System.out.println("i = " + i);
+ }
+ }
+}
\ No newline at end of file
diff --git a/Answers/40230112119/src/main/java/org/example/Match.java b/Answers/40230112119/src/main/java/org/example/Match.java
new file mode 100644
index 0000000..2001ad4
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/Match.java
@@ -0,0 +1,43 @@
+package org.example;
+
+public class Match {
+ Team team1;
+ Team team2;
+ public Match(Team team1, Team team2) {
+ this.team1 = team1;
+ this.team2 = team2;
+ }
+ public void start() {
+ int team1score = team1.numGoals;
+ int team2score = team2.numGoals;
+
+ for (int i = 0; i < 100; i++) {
+ team1.play();
+ if (team1.seeker.isSuccessful()) {
+ team1score += 150;
+ break;
+ }
+ team2.play();
+ if (team2.seeker.isSuccessful()) {
+ team2score += 150;
+ break;
+ }
+ }
+ for (int i = 0; i < team1.numGoals; i++) {
+ team1score += 10;
+ }
+ for (int i = 0; i < team2.numGoals; i++) {
+ team2score += 10;
+ }
+
+ System.out.println("Team one score: " + team1score);
+ System.out.println("Team two score: " + team2score);
+ if (team1score > team2score)
+ System.out.println("TEAM ONE WINS!!!");
+ else if (team1score < team2score)
+ System.out.println("TEAM TWO WINS!!!");
+ else
+ System.out.println("There's no winner!");
+ }
+
+}
diff --git a/Answers/40230112119/src/main/java/org/example/MyApp.java b/Answers/40230112119/src/main/java/org/example/MyApp.java
new file mode 100644
index 0000000..399ed6e
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/MyApp.java
@@ -0,0 +1,22 @@
+package org.example;
+
+public class MyApp {
+ public static void main(String[] args) {
+ int goals1 = 0;
+ int goals2 = 0;
+ Keeper keeper1 = new Keeper("Harry", 1);
+ Seeker seeker1 = new Seeker("Ron", 2);
+ Chaser[] chasers1 = {new Chaser("Ginny", 3), new Chaser("Katie", 4), new Chaser("Angelina", 5)};
+ Beater[] beaters1 = {new Beater("Oliver", 6), new Beater("Fred", 7)};
+ Team team1 = new Team(keeper1, seeker1, chasers1, beaters1, goals1);
+
+ Keeper keeper2 = new Keeper("Draco", 1);
+ Seeker seeker2 = new Seeker("Marcus", 2);
+ Chaser[] chasers2 = {new Chaser("Adrian", 3), new Chaser("Vincent", 4), new Chaser("Trence", 5)};
+ Beater[] beaters2 = {new Beater("Miles", 6), new Beater("Andrew", 7)};
+ Team team2 = new Team(keeper1, seeker1, chasers1, beaters1, goals2);
+
+ Match match = new Match(team1, team2);
+ match.start();
+ }
+}
diff --git a/Answers/40230112119/src/main/java/org/example/Player.java b/Answers/40230112119/src/main/java/org/example/Player.java
new file mode 100644
index 0000000..413d975
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/Player.java
@@ -0,0 +1,51 @@
+package org.example;
+import java.util.Random;
+
+public abstract class Player implements Success {
+ String name;
+ int num;
+ public Player(String name, int num) {
+ this.name = name;
+ this.num = num;
+ }
+}
+class Keeper extends Player {
+ public Keeper(String name, int num) {
+ super(name, num);
+ }
+ @Override
+ public boolean isSuccessful() {
+ Random random = new Random();
+ return random.nextInt(100) < 70;
+ }
+}
+class Seeker extends Player {
+ public Seeker(String name, int num) {
+ super(name, num);
+ }
+ @Override
+ public boolean isSuccessful() {
+ Random random = new Random();
+ return random.nextInt(100) < 5;
+ }
+}
+class Chaser extends Player {
+ public Chaser(String name, int num) {
+ super(name, num);
+ }
+ @Override
+ public boolean isSuccessful() {
+ Random random = new Random();
+ return random.nextInt(100) < 30;
+ }
+}
+class Beater extends Player {
+ public Beater(String name, int num) {
+ super(name, num);
+ }
+ @Override
+ public boolean isSuccessful() {
+ Random random = new Random();
+ return random.nextInt(100) < 40;
+ }
+}
\ No newline at end of file
diff --git a/Answers/40230112119/src/main/java/org/example/Success.java b/Answers/40230112119/src/main/java/org/example/Success.java
new file mode 100644
index 0000000..14939f6
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/Success.java
@@ -0,0 +1,5 @@
+package org.example;
+
+public interface Success {
+ public boolean isSuccessful();
+}
diff --git a/Answers/40230112119/src/main/java/org/example/Team.java b/Answers/40230112119/src/main/java/org/example/Team.java
new file mode 100644
index 0000000..e9e6b14
--- /dev/null
+++ b/Answers/40230112119/src/main/java/org/example/Team.java
@@ -0,0 +1,40 @@
+package org.example;
+
+public class Team {
+ Keeper keeper;
+ Seeker seeker;
+ Chaser[] chasers;
+ Beater[] beaters;
+ int numGoals;
+ public Team(Keeper keeper, Seeker seeker, Chaser[] chasers, Beater[] beaters, int numGoals) {
+ this.keeper = keeper;
+ this.seeker = seeker;
+ this.chasers = chasers;
+ this.beaters = beaters;
+ this.numGoals = 0;
+ }
+ private void setGoal() {
+ this.numGoals++;
+ }
+ void play() {
+ boolean atleastOneBeater = false;
+ for (Beater beater : beaters) {
+ if (beater.isSuccessful()) {
+ atleastOneBeater = true;
+ break;
+ }
+ }
+ int successfulChasers = 0;
+ boolean atleastTwoChasers = false;
+ for (Chaser chaser : chasers) {
+ if (chaser.isSuccessful())
+ successfulChasers++;
+ }
+ if (successfulChasers >= 2)
+ atleastTwoChasers = true;
+
+ if (keeper.isSuccessful() && atleastOneBeater && atleastTwoChasers)
+ setGoal();
+ }
+}
+