diff options
Diffstat (limited to 'challenge-112/ziameraj16/java')
| -rw-r--r-- | challenge-112/ziameraj16/java/CanonicalPath.java | 23 | ||||
| -rw-r--r-- | challenge-112/ziameraj16/java/ClimbStairs.java | 18 |
2 files changed, 41 insertions, 0 deletions
diff --git a/challenge-112/ziameraj16/java/CanonicalPath.java b/challenge-112/ziameraj16/java/CanonicalPath.java new file mode 100644 index 0000000000..d299c1908a --- /dev/null +++ b/challenge-112/ziameraj16/java/CanonicalPath.java @@ -0,0 +1,23 @@ +import java.util.Scanner; + +public class CanonicalPath { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("Enter a string"); + String input = scanner.next(); + System.out.println(getCanonicalPath(input)); + } + + public static String getCanonicalPath(String input) { + input = input.replaceAll("//", "/"); + if ('/' == (input.charAt(input.length() - 1))) { + input = input.substring(0, input.length() - 1); + } + while (input.contains("/..")) { + int index = input.indexOf("/.."); + input = input.replace("/" + input.charAt(index - 1) + "/..", ""); + } + return input; + } +} diff --git a/challenge-112/ziameraj16/java/ClimbStairs.java b/challenge-112/ziameraj16/java/ClimbStairs.java new file mode 100644 index 0000000000..68d2c4327e --- /dev/null +++ b/challenge-112/ziameraj16/java/ClimbStairs.java @@ -0,0 +1,18 @@ +import java.util.Scanner; + +public class ClimbStairs { + + public static void main(String[] args) { + Scanner scanner = new Scanner(System.in); + System.out.println("Enter total number of stairs"); + int stepsToClimb = scanner.nextInt(); + System.out.println("Output: " + numberOfWays(stepsToClimb + 1)); + } + + public static int numberOfWays(int n) { + if (n <= 1) { + return n; + } + return numberOfWays(n -1) + numberOfWays(n - 2); + } +} |
