diff --git a/.idea/encodings.xml b/.idea/encodings.xml
new file mode 100644
index 0000000..aa00ffa
--- /dev/null
+++ b/.idea/encodings.xml
@@ -0,0 +1,7 @@
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/workspace.xml b/.idea/workspace.xml
index 18d2d84..c39c7f1 100644
--- a/.idea/workspace.xml
+++ b/.idea/workspace.xml
@@ -4,12 +4,32 @@
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -27,7 +47,12 @@
"keyToString": {
"RunOnceActivity.OpenProjectViewOnStart": "true",
"RunOnceActivity.ShowReadmeOnStart": "true",
+ "SHARE_PROJECT_CONFIGURATION_FILES": "true",
"WebServerToolWindowFactoryState": "false",
+ "node.js.detected.package.eslint": "true",
+ "node.js.detected.package.tslint": "true",
+ "node.js.selected.package.eslint": "(autodetect)",
+ "node.js.selected.package.tslint": "(autodetect)",
"vue.rearranger.settings.migration": "true"
}
}]]>
@@ -39,8 +64,23 @@
1684937423021
-
+
+
+
+ 1684937915479
+
+
+
+ 1684937915479
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/pom.xml b/pom.xml
index 0d952e0..4379778 100644
--- a/pom.xml
+++ b/pom.xml
@@ -13,5 +13,5 @@
18
UTF-8
-
+
\ No newline at end of file
diff --git a/src/main/java/Main.java b/src/main/java/Main.java
new file mode 100644
index 0000000..3add475
--- /dev/null
+++ b/src/main/java/Main.java
@@ -0,0 +1,87 @@
+import java.util.*;
+
+public class Main {
+ public static void main(String[] args) {
+ //palindrome
+ Scanner scanner = new Scanner(System.in);
+ System.out.print("Введіть текст: ");
+ String input = scanner.nextLine();
+ String cleanText = input.replaceAll("[^a-zA-Zа-яА-Я0-9]", "");
+ String lowercaseText = cleanText.toLowerCase();
+
+ if (isPalindrome(lowercaseText)) {
+ System.out.println("Текст є паліндромом.");
+ } else {
+ System.out.println("Текст не є паліндромом.");
+ }
+
+ //arrays
+ int[] nums1 = {1,2,3,1}; //true
+ int[] nums2 = {1,2,3,4}; //false
+ int[] nums3 = {1,1,1,3,3,4,3,2,4,2}; //true
+ System.out.println(containsDuplicate(nums1));
+ System.out.println(containsDuplicate(nums2));
+ System.out.println(containsDuplicate(nums3));
+
+ //arrays+target
+ int[] nums_1 = {2,7,11,15};
+ int target_1 = 9;
+ int[] nums_2 = {3,2,4};
+ int target_2 = 6;
+ int[] nums_3 = {3,3};
+ int target_3 = 6;
+
+ System.out.println(Arrays.toString(twoSum(nums_1,target_1)));
+ System.out.println(Arrays.toString(twoSum(nums_2,target_2)));
+ System.out.println(Arrays.toString(twoSum(nums_3,target_3)));
+
+ //maxProfit
+ int[] prices1 = {7,1,5,3,6,4};//5
+ int[] prices2 = {7,6,4,3,1};//0
+ System.out.println(MaxProfit.maxProfit(prices1));
+ System.out.println(MaxProfit.maxProfit(prices2));
+
+ //reverseArray
+ int[] startArray = {1,2,3,4,5};
+ System.out.println("Start array: "+Arrays.toString(startArray));
+ System.out.println("Reversed array: "+Arrays.toString(ReverseArray.reverseArray(startArray)));
+
+
+ }
+ private static boolean isPalindrome(String text) {
+ int length = text.length();
+ for (int i = 0; i < length / 2; i++) {
+ if (text.charAt(i) != text.charAt(length - 1 - i)) {
+ return false;
+ }
+ }
+ return true;
+ }
+
+ private static boolean containsDuplicate(int[] nums) {
+ Set set = new HashSet<>();
+ for (int num : nums) {
+ if (set.contains(num)) {
+ return true;
+ }
+ set.add(num);
+ }
+ return false;
+ }
+
+ private static int[] twoSum(int[] nums, int target) {
+ int[] result = new int[2];
+ Map map = new HashMap<>();
+
+ for (int i = 0; i < nums.length; i++) {
+ int complement = target - nums[i];
+ if (map.containsKey(complement)) {
+ result[0] = map.get(complement);
+ result[1] = i;
+ break;
+ }
+ map.put(nums[i], i);
+ }
+ return result;
+ }
+}
diff --git a/src/main/java/MaxProfit.java b/src/main/java/MaxProfit.java
new file mode 100644
index 0000000..f0bf3de
--- /dev/null
+++ b/src/main/java/MaxProfit.java
@@ -0,0 +1,16 @@
+public class MaxProfit {
+ public static int maxProfit(int[] prices) {
+ int maxProfit = 0;
+ int minPrice = Integer.MAX_VALUE;
+
+ for (int i = 0; i < prices.length; i++) {
+ if (prices[i] < minPrice) {
+ minPrice = prices[i];
+ } else if (prices[i] - minPrice > maxProfit) {
+ maxProfit = prices[i] - minPrice;
+ }
+ }
+
+ return maxProfit;
+ }
+}
diff --git a/src/main/java/ReverseArray.java b/src/main/java/ReverseArray.java
new file mode 100644
index 0000000..15ff7dd
--- /dev/null
+++ b/src/main/java/ReverseArray.java
@@ -0,0 +1,16 @@
+public class ReverseArray {
+ public static int[] reverseArray(int[] array) {
+ int start = 0;
+ int end = array.length - 1;
+
+ while (start < end) {
+ int temp = array[start];
+ array[start] = array[end];
+ array[end] = temp;
+ start++;
+ end--;
+ }
+
+ return array;
+ }
+}