diff --git a/.idea/$PRODUCT_WORKSPACE_FILE$ b/.idea/$PRODUCT_WORKSPACE_FILE$
new file mode 100644
index 0000000..3733e0d
--- /dev/null
+++ b/.idea/$PRODUCT_WORKSPACE_FILE$
@@ -0,0 +1,19 @@
+
+
+
+
+
+
+ 1.8
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/compiler.xml b/.idea/compiler.xml
new file mode 100644
index 0000000..2bb69ef
--- /dev/null
+++ b/.idea/compiler.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/misc.xml b/.idea/misc.xml
new file mode 100644
index 0000000..d30d09e
--- /dev/null
+++ b/.idea/misc.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules.xml b/.idea/modules.xml
new file mode 100644
index 0000000..5103107
--- /dev/null
+++ b/.idea/modules.xml
@@ -0,0 +1,8 @@
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/vcs.xml b/.idea/vcs.xml
new file mode 100644
index 0000000..35eb1dd
--- /dev/null
+++ b/.idea/vcs.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/PlaylistChallenge.iml b/PlaylistChallenge.iml
new file mode 100644
index 0000000..0ddf51c
--- /dev/null
+++ b/PlaylistChallenge.iml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/main/java/io/zipcoder/Music.java b/src/main/java/io/zipcoder/Music.java
index 180c65c..d22562b 100644
--- a/src/main/java/io/zipcoder/Music.java
+++ b/src/main/java/io/zipcoder/Music.java
@@ -4,11 +4,32 @@ public class Music {
private String[] playList;
- public Music(String[] playList){
+ public Music(String[] playList) {
this.playList = playList;
}
- public Integer selection(Integer startIndex, String selection){
- return null;
+ public Integer selection(Integer startIndex, String selection) {
+ int leftToRight = 0;
+ int rightToLeft = 0;
+ for (int i = startIndex; i < playList.length; i++) {
+ if (playList[i].equals(selection))
+ break;
+ if (i + 1 > playList.length)
+ i = -1;
+ leftToRight++;
+ }
+ for (int i = startIndex; i < playList.length; i--) {
+ if (playList[i].equals(selection))
+ break;
+ if (i - 1 < 0)
+ i = playList.length;
+ rightToLeft++;
+ }
+
+ if(leftToRight < rightToLeft) {
+ return leftToRight;
+ }
+ return rightToLeft;
}
-}
+
+}
\ No newline at end of file
diff --git a/target/classes/io/zipcoder/Music.class b/target/classes/io/zipcoder/Music.class
new file mode 100644
index 0000000..68ce933
Binary files /dev/null and b/target/classes/io/zipcoder/Music.class differ
diff --git a/target/test-classes/io/zipcoder/MusicTest.class b/target/test-classes/io/zipcoder/MusicTest.class
new file mode 100644
index 0000000..3a5845d
Binary files /dev/null and b/target/test-classes/io/zipcoder/MusicTest.class differ