30 lines
654 B
Bash
Executable File
30 lines
654 B
Bash
Executable File
#!/bin/bash
|
|
|
|
length=0
|
|
n_array=()
|
|
lines_number=0
|
|
while read line; do
|
|
if [ $length -eq 0 ]; then
|
|
length=${#line}
|
|
n_array=($(for j in $(seq $length); do echo 0; done))
|
|
fi
|
|
for i in $(seq $length); do
|
|
curr_bit=${line:$((i-1)):1}
|
|
n_array[$((i-1))]=$((n_array[i-1]+curr_bit))
|
|
done
|
|
lines_number=$((lines_number+1))
|
|
done
|
|
|
|
gamma_rate=''
|
|
epsilon_rate=''
|
|
for i in $(seq $length); do
|
|
if [ ${n_array[$((i-1))]} -ge $((lines_number/2)) ]; then
|
|
gamma_rate=${gamma_rate}1
|
|
epsilon_rate=${epsilon_rate}0
|
|
else
|
|
gamma_rate=${gamma_rate}0
|
|
epsilon_rate=${epsilon_rate}1
|
|
fi
|
|
done
|
|
echo "ibase=2;obase=A;$gamma_rate*$epsilon_rate"|bc
|