diff --git a/README.md b/README.md index a2bc0aa..a2fdbd0 100644 --- a/README.md +++ b/README.md @@ -22,8 +22,9 @@ CodeKiller777 Ручной ввод пути к файлу (через консоль, через правку переменной в коде и т.д.) недопустим. Необходимость любых ручных действий с файлами в процессе работы программы будут обнулять решение. -## Автор решения +## Автор решения: Маликов Алим + -## Описание реализации +## Описание реализации: необходимо создать программу, которая будет вычислять трех самых активных участников на основе данных о коммитах в релизную ветку за спринт. Ниже приведен пример кода на Java ## Инструкция по сборке и запуску решения diff --git a/Task_Java/.idea/.gitignore b/Task_Java/.idea/.gitignore new file mode 100644 index 0000000..26d3352 --- /dev/null +++ b/Task_Java/.idea/.gitignore @@ -0,0 +1,3 @@ +# Default ignored files +/shelf/ +/workspace.xml diff --git a/Task_Java/.idea/Task_Croc.iml b/Task_Java/.idea/Task_Croc.iml new file mode 100644 index 0000000..d6ebd48 --- /dev/null +++ b/Task_Java/.idea/Task_Croc.iml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Task_Java/.idea/misc.xml b/Task_Java/.idea/misc.xml new file mode 100644 index 0000000..862d09b --- /dev/null +++ b/Task_Java/.idea/misc.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Task_Java/.idea/modules.xml b/Task_Java/.idea/modules.xml new file mode 100644 index 0000000..d9941ee --- /dev/null +++ b/Task_Java/.idea/modules.xml @@ -0,0 +1,9 @@ + + + + + + + + + \ No newline at end of file diff --git a/Task_Java/.idea/vcs.xml b/Task_Java/.idea/vcs.xml new file mode 100644 index 0000000..2df5ac4 --- /dev/null +++ b/Task_Java/.idea/vcs.xml @@ -0,0 +1,6 @@ + + + + + + \ No newline at end of file diff --git a/Task_Java/Task/Task.iml b/Task_Java/Task/Task.iml new file mode 100644 index 0000000..c90834f --- /dev/null +++ b/Task_Java/Task/Task.iml @@ -0,0 +1,11 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/Task_Java/Task/src/Main.java b/Task_Java/Task/src/Main.java new file mode 100644 index 0000000..07dcd7b --- /dev/null +++ b/Task_Java/Task/src/Main.java @@ -0,0 +1,32 @@ + +import java.io.*; +import java.util.*; + +public class Main { + public static void main(String[] args) { + Map commits = new HashMap<>(); + + try (BufferedReader reader = new BufferedReader(new FileReader("commits.txt"))) { + String line; + while ((line = reader.readLine()) != null) { + String[] parts = line.split(" "); + String username = parts[0]; + + commits.put(username, commits.getOrDefault(username, 0) + 1); + } + } catch (IOException e) { + e.printStackTrace(); + } + + List bestContributors = new ArrayList<>(commits.keySet()); + bestContributors.sort((a, b) -> commits.get(b) - commits.get(a)); + + try (PrintWriter writer = new PrintWriter("result.txt")) { + for (int i = 0; i < Math.min(3, bestContributors.size()); i++) { + writer.println(bestContributors.get(i)); + } + } catch (FileNotFoundException e) { + e.printStackTrace(); + } + } +}