diff --git a/src/main/java/com/cool/hot100/strange_skills_cunning/Num169.java b/src/main/java/com/cool/hot100/strange_skills_cunning/Num169.java
new file mode 100644
index 0000000..fb52d8a
--- /dev/null
+++ b/src/main/java/com/cool/hot100/strange_skills_cunning/Num169.java
@@ -0,0 +1,31 @@
+package com.cool.hot100.strange_skills_cunning;
+
+/**
+ * Created with IntelliJ IDEA.
+ *
+ * @Author: Cool
+ * @Date: 2024/09/30/16:46
+ * @Description: 169. 多数元素
+ * DayNumber 1
+ * Hard 1
+ * Level 2
+ * @link https://leetcode.cn/problems/majority-element/description/?envType=study-plan-v2&envId=top-100-liked
+ */
+public class Num169 {
+    public int majorityElement(int[] nums) {
+        int cur=nums[0];
+        int curNum=1;
+        for(int i=1;i<nums.length;i++){
+            if(curNum==0){
+                cur=nums[i];
+            }
+            if(cur==nums[i]){
+                curNum++;
+            }else{
+                curNum--;
+            }
+        }
+        return cur;
+    }
+
+}
diff --git a/src/main/java/com/cool/hot100/strange_skills_cunning/Num287.java b/src/main/java/com/cool/hot100/strange_skills_cunning/Num287.java
new file mode 100644
index 0000000..73b7496
--- /dev/null
+++ b/src/main/java/com/cool/hot100/strange_skills_cunning/Num287.java
@@ -0,0 +1,18 @@
+package com.cool.hot100.strange_skills_cunning;
+
+/**
+ * Created with IntelliJ IDEA.
+ *
+ * @Author: Cool
+ * @Date: 2024/09/30/20:52
+ * @Description: 287. 寻找重复数
+ * DayNumber 5
+ * Level 6
+ * Hard 2
+ * @link https://leetcode.cn/problems/find-the-duplicate-number/description/?envType=study-plan-v2&envId=top-100-liked
+ */
+public class Num287 {
+
+
+
+}
diff --git a/src/main/java/com/cool/hot100/strange_skills_cunning/Num31.java b/src/main/java/com/cool/hot100/strange_skills_cunning/Num31.java
new file mode 100644
index 0000000..3e83e1b
--- /dev/null
+++ b/src/main/java/com/cool/hot100/strange_skills_cunning/Num31.java
@@ -0,0 +1,58 @@
+package com.cool.hot100.strange_skills_cunning;
+
+import org.junit.Test;
+
+import java.util.Arrays;
+
+/**
+ * Created with IntelliJ IDEA.
+ *
+ * @Author: Cool
+ * @Date: 2024/09/30/20:10
+ * @Description: 31. 下一个排列
+ * Level 5
+ * Hard 2
+ * DayNumber 3
+ * @link https://leetcode.cn/problems/next-permutation/description/?envType=study-plan-v2&envId=top-100-liked
+ */
+public class Num31 {
+
+    public void nextPermutation(int[] nums) {
+        int m = 0, n = 0;
+        for (int i = nums.length - 2; i >= 0; i--) {
+            if (nums[i] < nums[i + 1]) {
+                m = i;
+                break;
+            }
+            if (i == 0) {
+                reverse(nums, 0, nums.length);
+                return;
+
+            }
+        }
+        for (int i = nums.length - 1; i >= 0; i--) {
+            if (nums[i] > nums[m]) {
+                swap(nums, i, m);
+                reverse(nums, m + 1, nums.length);
+                return;
+            }
+        }
+    }
+
+    public void swap(int[] nums, int i, int j) {
+        int temp = nums[i];
+        nums[i] = nums[j];
+        nums[j] = temp;
+    }
+
+    private void reverse(int[] nums, int left, int right) {
+        right--;
+        while (left < right) {
+            swap(nums, left++, right--);
+        }
+    }
+    @Test
+    public void test(){
+        nextPermutation(new int[]{3,1,2});
+    }
+}
diff --git a/src/main/java/com/cool/hot100/strange_skills_cunning/Num75.java b/src/main/java/com/cool/hot100/strange_skills_cunning/Num75.java
new file mode 100644
index 0000000..c16da01
--- /dev/null
+++ b/src/main/java/com/cool/hot100/strange_skills_cunning/Num75.java
@@ -0,0 +1,35 @@
+package com.cool.hot100.strange_skills_cunning;
+
+/**
+ * Created with IntelliJ IDEA.
+ *
+ * @Author: Cool
+ * @Date: 2024/09/30/16:50
+ * @Description: 75. 颜色分类
+ * Level 4
+ * Hard 2
+ * DayNumber 2
+ * @link https://leetcode.cn/problems/sort-colors/description/?envType=study-plan-v2&envId=top-100-liked
+ */
+public class Num75 {
+
+    public void sortColors(int[] nums) {
+        int head = 0;
+        int end = nums.length - 1;
+        for (int i = 0; i <= end; i++) {
+            while (i <= end && nums[i] == 2) {
+                int temp = nums[end];
+                nums[end] = nums[i];
+                nums[i] = temp;
+                end--;
+            }
+            if (nums[i] == 0) {
+                int temp = nums[head];
+                nums[head] = nums[i];
+                nums[i] = temp;
+                head++;
+            }
+        }
+    }
+
+}