Menu
Coddy logo textTech

סיכום – טבלת מובילי האורך

חלק מהיחידה לוגיקה וזרימת תוכנית במסלול ה-Kotlin של Coddy. שיעור 40 מתוך 63.

challenge icon

אתגר

בינוני

השלימו את groupLeaderboard עם הפרמטרים words: List<String>. קבצו מילים לפי אורך. החזירו מחרוזות בפורמט length=count, כאשר הקבוצות הגדולות מופיעות קודם; במקרה של שוויון, האורכים המספריים הקטנים יותר מופיעים קודם. ספרו מופעים כפולים.

אלא אם צוין לעיל טווח ערכים מחמיר יותר, האוספים מכילים לכל היותר 100 איברים בכל רמה, וארגומנטים של מספרים שלמים וערכי מספרים שלמים באוספים נמצאים בין ‎-1000 ל־1000. טקסט שסופק לניתוח יכול לכלול ייצוגים לא תקינים או מחוץ לטווח, כמתואר.

החזירו ערך מסוג List<String>. השאירו את קוד הקלט/פלט שסופק. הוא קורא ארגומנטים סקלריים, אחד בכל שורה; רשימה מתחילה במספר האיברים שלה ואחריו איבריה, ומפה מתחילה במספר הרשומות שלה ואחריו כל מפתח וערך. רשימות מקוננות חוזרות על פורמט מספר האיברים והאיברים בכל שורה. ה־main שסופקה מדפיסה את ערך ההחזרה ואחריו תו newline אחד. רשימות משתמשות בפורמט הסטנדרטי של Kotlin עם סוגריים מרובעים; אל תדפיסו תוויות נוספות.

נסו בעצמכם

fun groupLeaderboard(words: List<String>): List<String> {
    // כתבו כאן את הפתרון שלכם.
    return emptyList()
}
fun main() {
    val wordsCount = readln().toInt()
    val words = mutableListOf<String>()
    for (i0 in 0 until wordsCount) {
        val wordsItem = readLine().orEmpty()
        words.add(wordsItem)
    }
    println(groupLeaderboard(words))
}

כל השיעורים ביחידה לוגיקה וזרימת תוכנית

תרגלו בעצמכם: Kotlin אונליין