50 lines
911 B
Bash
Executable File
50 lines
911 B
Bash
Executable File
#!/bin/bash
|
|
yarr=()
|
|
arr_=()
|
|
zeroes=0
|
|
ones=0
|
|
|
|
while read line; do
|
|
yarr+=("$line")
|
|
done
|
|
|
|
function asdf() {
|
|
arr=(${yarr[@]})
|
|
for ((i=0; i<${#arr[0]}; i++)); do
|
|
for ((j=0; j<${#arr[@]}; j++)); do
|
|
if [[ $(cut -c$((i+1)) <<< "${arr[$j]}") == 0 ]]; then
|
|
zeroes=$((zeroes+1))
|
|
else
|
|
ones=$((ones+1))
|
|
fi
|
|
done
|
|
if [[ $zeroes -lt $ones && $1 == 1 || $zeroes == $ones && $1 == 1 ]] || \
|
|
[[ $zeroes -gt $ones && $1 == 0 ]]; then
|
|
for ((j=0; j<${#arr[@]}; j++)); do
|
|
[[ $(cut -c$((i+1)) <<< "${arr[$j]}") == "0" ]] && arr_+=("${arr[$j]}")
|
|
done
|
|
else
|
|
for ((j=0; j<${#arr[@]}; j++)); do
|
|
[[ $(cut -c$((i+1)) <<< "${arr[$j]}") == "1" ]] && arr_+=("${arr[$j]}")
|
|
done
|
|
fi
|
|
arr=(${arr_[@]})
|
|
arr_=()
|
|
|
|
if [[ "${#arr[@]}" == 1 ]]; then
|
|
break
|
|
fi
|
|
zeroes=0
|
|
ones=0
|
|
done
|
|
}
|
|
|
|
asdf 0
|
|
echo 0: ${arr[0]}
|
|
uwu=${arr[0]}
|
|
asdf 1
|
|
owo=${arr[0]}
|
|
echo 1: ${arr[0]}
|
|
|
|
echo $((2#$uwu*2#$owo))
|