Terrible solution to a terrible question. Working part 2
This commit is contained in:
@ -22,8 +22,11 @@ read -r -a BOT_ARRAY <<< "$( grep -Eo '[-0-9]*' "$FILE" | paste -s -d " " )"
|
|||||||
printf "Bot array size: %s\n" "${#BOT_ARRAY[@]}"
|
printf "Bot array size: %s\n" "${#BOT_ARRAY[@]}"
|
||||||
|
|
||||||
# Load arrangements for every second
|
# Load arrangements for every second
|
||||||
for SECONDS in $( seq 1 100 )
|
#for SECONDS in $( seq 1 9999 )
|
||||||
|
for SECONDS in $( seq 6514 6516 )
|
||||||
do
|
do
|
||||||
|
# Compute positions for each bot
|
||||||
|
printf "Working on +%s seconds.\n" "$SECONDS"
|
||||||
IFS=';'; read -r -a FINAL_ARRAY <<< "$(
|
IFS=';'; read -r -a FINAL_ARRAY <<< "$(
|
||||||
for (( i=0; i<${#BOT_ARRAY[@]}; i+=4 ))
|
for (( i=0; i<${#BOT_ARRAY[@]}; i+=4 ))
|
||||||
do
|
do
|
||||||
@ -39,6 +42,7 @@ do
|
|||||||
unset IFS
|
unset IFS
|
||||||
|
|
||||||
# Generate "empty" map
|
# Generate "empty" map
|
||||||
|
# Map is a 1d array
|
||||||
MAP_LEN=$(( MAP_HEIGHT * MAP_WIDTH ))
|
MAP_LEN=$(( MAP_HEIGHT * MAP_WIDTH ))
|
||||||
read -r -a MAP_ARRAY <<< "$(
|
read -r -a MAP_ARRAY <<< "$(
|
||||||
for (( i=0; i<MAP_LEN; i++ ))
|
for (( i=0; i<MAP_LEN; i++ ))
|
||||||
@ -63,16 +67,21 @@ do
|
|||||||
PY=$(( MAP_HEIGHT + PY ))
|
PY=$(( MAP_HEIGHT + PY ))
|
||||||
fi
|
fi
|
||||||
|
|
||||||
# Calculate serial position
|
# Calculate serial position and mark it
|
||||||
POSITION=$(( PX + (PY*MAP_WIDTH -1) ))
|
POSITION=$(( PX + (PY -1)*MAP_WIDTH ))
|
||||||
MAP_ARRAY[POSITION]=X
|
MAP_ARRAY[POSITION]=X
|
||||||
|
|
||||||
done <<< "$( printf "%s\n" "${FINAL_ARRAY[@]}" )"
|
done <<< "$( printf "%s\n" "${FINAL_ARRAY[@]}" )"
|
||||||
|
|
||||||
# Print out map for manual review
|
# Print out map for manual review
|
||||||
|
#printf "%s" "${MAP_ARRAY[@]}" | fold -w $(( MAP_WIDTH )) | grep -o 'XXXXXXXXXX' && break
|
||||||
printf "%s" "${MAP_ARRAY[@]}" | fold -w $(( MAP_WIDTH ))
|
printf "%s" "${MAP_ARRAY[@]}" | fold -w $(( MAP_WIDTH ))
|
||||||
printf "\n"
|
printf "\n"
|
||||||
|
|
||||||
|
printf "Final array length: %s, map array length: %s\n" "${#FINAL_ARRAY[@]}" "${#MAP_ARRAY[@]}"
|
||||||
printf "\n"
|
printf "\n"
|
||||||
|
|
||||||
|
# Reset for next run
|
||||||
|
unset MAP_ARRAY
|
||||||
unset FINAL_ARRAY
|
unset FINAL_ARRAY
|
||||||
done
|
done
|
||||||
|
Reference in New Issue
Block a user