declare -A map
while read line; do
arr=(${line/:/ })
if [ map["${arr[0]}"] ]; then
map["${arr[0]}"]=${map["${arr[0]}"]}"\n"${arr[1]}
else
map["${arr[0]}"]=${arr[1]}
fi
done < nowcoder.txt
declare -a tmp
tmp+=$(${!map[*]} | tr ' ' '\n' | sort -n)
for i in $(echo ${!map[*]} | tr ' ' '\n' | sort -n); do
printf "[$i]"
printf "${map[$i]}\n"
done