diff --git a/climbing-stairs/mumunuu.java b/climbing-stairs/mumunuu.java new file mode 100644 index 000000000..8fcc940e9 --- /dev/null +++ b/climbing-stairs/mumunuu.java @@ -0,0 +1,23 @@ +// 70. Climbing Stairs https://leetcode.com/problems/climbing-stairs/description/ +class Solution { + public int climbStairs(int n) { + + + if (n <= 2) { + return n; + } + + int a = 1; + int b = 2; + + for (int i = 3; i <= n; i++) { + int temp = b; + b = a + b; + a = temp; + } + + return b; + + + } +} diff --git a/product-of-array-except-self/mumunuu.java b/product-of-array-except-self/mumunuu.java new file mode 100644 index 000000000..9e6c9828c --- /dev/null +++ b/product-of-array-except-self/mumunuu.java @@ -0,0 +1,31 @@ +class Solution { + public int[] productExceptSelf(int[] nums) { + + // 원래는 그냥 다 곱해서 자기 빼고 나누면 되는데 나눗셈 하지 말라고 함 + + // 왼쪽 곱 구한다음에 오른쪽 곱으로 리턴하면 됨 + int[] answer = new int[nums.length]; + + int left = 1; + answer[0] = left; + + for (int i = 1; i < nums.length; i++) { + answer[i] = answer[i - 1] * nums[i - 1]; + } + + // 1 1 2 6 + + // 오른쪽 누적 곱 + + int right = 1; + + for (int i = nums.length - 1; i >= 0; i--) { + answer[i] = answer[i] * right; + right *= nums[i]; + } + + + return answer; + + } +} diff --git a/valid-anagram/mumunuu.java b/valid-anagram/mumunuu.java new file mode 100644 index 000000000..edf3fa7b9 --- /dev/null +++ b/valid-anagram/mumunuu.java @@ -0,0 +1,19 @@ +import java.util.Arrays; + +class Solution { + public boolean isAnagram(String s, String t) { + + if (s.length() != t.length()) { + return false; + } + + char[] a = s.toCharArray(); + char[] b = t.toCharArray(); + + Arrays.sort(a); + Arrays.sort(b); + + return Arrays.equals(a, b); + + } +}