Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- fun main() {
- }
- fun task1(){
- val N = readLine()?.toInt() ?: return // Вводим размер матрицы N
- val matrix = Array(N) { IntArray(N) } // Создаем двумерный массив
- // Вводим элементы матрицы
- for (i in 0 until N) {
- val row = readLine()?.split(" ")?.map { it.toInt() } ?: return
- if (row.size != N) {
- println("Матрица должна быть размером $N x $N")
- return
- }
- matrix[i] = row.toIntArray()
- }
- val result = isSymmetric(matrix, N)
- println(result)
- }
- fun isSymmetric(matrix: Array<IntArray>, N: Int): Boolean {
- // Проверяем симметрию относительно побочной диагонали
- for (i in 0 until N) {
- for (j in 0 until N) {
- if (matrix[i][j] != matrix[N - 1 - j][N - 1 - i]) {
- return false
- }
- }
- }
- return true
- }
- fun task2() {
- val weeklyNorms = readWeeklyNorms()
- val weeklyConsumption = readWeeklyConsumption()
- val result = checkNutrientIntake(weeklyNorms, weeklyConsumption)
- println(result)
- }
- fun readWeeklyNorms(): IntArray {
- val norms = IntArray(3)
- print("Введите недельную норму белков: ")
- norms[0] = readLine()!!.toInt()
- print("Введите недельную норму жиров: ")
- norms[1] = readLine()!!.toInt()
- print("Введите недельную норму углеводов: ")
- norms[2] = readLine()!!.toInt()
- return norms
- }
- fun readWeeklyConsumption(): Array<IntArray> {
- val weeklyConsumption = Array(7) { IntArray(3) }
- for (day in 1..7) {
- print("Введите потребление белков в день $day: ")
- weeklyConsumption[day - 1][0] = readLine()!!.toInt()
- print("Введите потребление жиров в день $day: ")
- weeklyConsumption[day - 1][1] = readLine()!!.toInt()
- print("Введите потребление углеводов в день $day: ")
- weeklyConsumption[day - 1][2] = readLine()!!.toInt()
- }
- return weeklyConsumption
- }
- fun checkNutrientIntake(weeklyNorms: IntArray, weeklyConsumption: Array<IntArray>): String {
- val totalConsumption = IntArray(3)
- for (day in 0 until 7) {
- for (nutrient in 0 until 3) {
- totalConsumption[nutrient] += weeklyConsumption[day][nutrient]
- }
- }
- return if (totalConsumption[0] <= weeklyNorms[0] &&
- totalConsumption[1] <= weeklyNorms[1] &&
- totalConsumption[2] <= weeklyNorms[2]
- ) {
- "Отлично"
- } else {
- "Нужно есть поменьше"
- }
- }
- fun task3() {
- val words = arrayOf("apple", "banana", "apple", "cherry", "banana", "apple")
- val k = 2
- val result = kMostFrequentWords(words, k)
- println(result) // Выведет: [apple, banana]
- }
- fun kMostFrequentWords(words: Array<String>, k: Int): List<String> {
- // Создаем словарь для подсчета частоты встречаемости слов
- val wordCount = mutableMapOf<String, Int>()
- // Подсчитываем частоту слов в массиве
- for (word in words) {
- wordCount[word] = wordCount.getOrDefault(word, 0) + 1
- }
- // Сортируем слова сначала по убыванию частоты, а затем по убыванию лексикографического порядка
- val sortedWords = wordCount.entries.sortedWith(compareBy({ -it.value }, { it.key }))
- // Выбираем первые k слов
- val result = sortedWords.take(k).map { it.key }
- return result
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement