使用Lambda表达式进行多层次数据过滤与聚合

Kotlin Hard lambdas

任务 «使用Lambda表达式进行多层次数据过滤与聚合»

编写一个Kotlin程序,从标准输入读取一个字符串列表。每个字符串包含由空格分隔的数字。需要使用Lambda表达式和高阶函数(如map、filter、reduce、takeWhile、dropWhile等)执行以下操作:过滤出数字个数为偶数的字符串,然后从每个这样的字符串中仅选择正数(大于零),之后针对每个字符串计算所有选定数字的乘积,并以其原始字符串中数字的个数为指数进行幂运算。如果过滤后字符串中没有剩余数字,则将乘积视为0。按升序输出结果。限制条件:字符串数量不超过100,每个数字的绝对值不超过1000。

输入格式

第一行包含一个整数 N (1 ≤ N ≤ 100) — 表示字符串的数量。接下来是 N 行,每行包含由空格分隔的整数。每行中的数字个数不超过50。

输出格式

输出 N 个整数 — 每行处理后的结果,按升序排序,每个结果占一行。

示例

示例 1

输入
3 User Alice 25 Address Moscow Tverskaya Product 1 Laptop 999.99
输出
Для данного ввода задача не определена, так как строки не содержат только числа.

示例 2

输入
1 User Bob 30
输出
Для данного ввода задача не определена, так как строка не содержит только числа.
main.kt