小慕正在开发一个数据可视化工具,需要处理一种特殊的矩阵排列方式。这个矩阵中的所有元素都以数字字符的形式存储在一个字符串里,并且这些元素原本是按照行优先的顺序排列的——也就是先从左到右读完一整行,再换到下一行继续从左到右读取。 现在,小慕遇到了一个问题:他需要将这个矩阵转换为列优先的表达方式——也就是先从上到下读完一整列,再换到下一列继续从上到下读取。 例如,假设有一个 2×2 的矩阵,为 "1234",那么它对应的就是 "1324"。 小慕的工具接收一个字符串 `items`,表示矩阵的行优先表达。这个字符串的长度为 `n`,其中 `1 <= n <= 10000`,且仅包含数字字符 `0-9`。 请你帮助小慕编写程序,输出对应的列优先表达的字符串。如果输入的字符串长度无法构成一个正方形矩阵(即长度不是一个完全平方数),则输出 `ERROR`。
提示:带虚线的词点一下有通俗解释。
输入描述
一个字符串 `items`,表示矩阵的行优先表达。
输出描述
- 如果输入能够表示一个正方矩阵,则输出列优先表达。 - 如果无法形成正方矩阵,则输出 `ERROR`。
示例
示例 1
输入
435245019
输出
420341559
示例 2
输入
0123456789
输出
ERROR
时间限制 1000 ms · 内存限制 128 MB