Задачи medium с HH (две первых)

This commit is contained in:
Leonid
2025-04-03 11:10:12 +03:00
parent 79c26666c6
commit 2005871330
4 changed files with 63 additions and 2 deletions

View File

@@ -1,4 +1,4 @@
package com.algos.hh;
package com.algos.hh.easy;
//Обработка логов
// Вы работаете над системой анализа логов. Вам нужно разработать компонент для обработки и анализа строк. Этот компонент должен выполнять следующие операции:

View File

@@ -1,4 +1,4 @@
package com.algos.hh;
package com.algos.hh.easy;
//Площадь и периметр
// Вы разрабатываете программу для обработки информации о фигурах на плоскости. Вам необходимо создать класс, который будет вычислять площадь и периметр фигуры. Программа работает с двумя типами фигур круг и квадрат.

View File

@@ -0,0 +1,28 @@
package com.algos.hh.medium;
import java.util.Locale;
public class Palindrome {
public static void main(String[] args) {
System.out.println(checkPalindrome("Тут как тут"));
System.out.println(checkPalindrome("Программист"));
System.out.println(checkPalindrome("Шалаш"));
}
public static String checkPalindrome(String input) {
input = input.trim().toLowerCase(Locale.ROOT);
for (int i = 0; i < input.length() / 2; i++) {
if (input.charAt(i) == ' ') {
continue;
}
if (input.charAt(i) != input.charAt(input.length() - 1 - i)) {
return "Не палиндром";
}
}
return "Палиндром";
}
}

View File

@@ -0,0 +1,33 @@
package com.algos.hh.medium;
public class TemperatureDrops {
public static void main(String[] args) {
System.out.println(findDrops("0 5 2 7 4 1"));
System.out.println(findDrops("10 8 6 4 2 0 -2 -4"));
}
public static String findDrops(String input) {
String[] sourceArray = input.split(" ");
Integer[] destArray = new Integer[sourceArray.length];
for (int i = 0; i < sourceArray.length; i++) {
destArray[i] = Integer.parseInt(sourceArray[i]);
}
StringBuilder sb = new StringBuilder();
for (int i = 1; i < destArray.length ; i++) {
int prev = destArray[i - 1];
int curr = destArray[i];
if (Math.abs(prev) - Math.abs(curr) >= 3) {
sb.append(i).append(" ");
}
}
if (!sb.isEmpty()) {
return sb.toString().trim();
}
return "Нет";
}
}