days 11/16: remove faulty use of external command (seq)
This commit is contained in:
26
2020/OUTPUT
26
2020/OUTPUT
@@ -256,21 +256,21 @@ ex2-c : size=99 res=113387824750592
|
||||
|
||||
+++++++++++++++++ ex1
|
||||
ex1.bash : res=2386
|
||||
time: 0:40.81 real, 40.25 user, 0.07 sys
|
||||
context-switch: 6828+17, page-faults: 0+1317
|
||||
time: 0:33.55 real, 33.12 user, 0.42 sys
|
||||
context-switch: 179+18, page-faults: 0+1948
|
||||
|
||||
ex1-c : res=2386
|
||||
time: 0:00.03 real, 0.00 user, 0.00 sys
|
||||
context-switch: 1+2, page-faults: 0+91
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+90
|
||||
|
||||
+++++++++++++++++ ex2
|
||||
ex2.bash : res=2091
|
||||
time: 1:19.37 real, 78.72 user, 0.08 sys
|
||||
context-switch: 9445+14, page-faults: 0+1717
|
||||
time: 1:08.60 real, 68.56 user, 0.02 sys
|
||||
context-switch: 530+10, page-faults: 0+1480
|
||||
|
||||
ex2-c : res=2091
|
||||
time: 0:00.04 real, 0.02 user, 0.00 sys
|
||||
context-switch: 2+2, page-faults: 0+91
|
||||
time: 0:00.01 real, 0.01 user, 0.00 sys
|
||||
context-switch: 6+1, page-faults: 0+90
|
||||
|
||||
=========================================
|
||||
================= day12 =================
|
||||
@@ -366,21 +366,21 @@ ex1-c : res[30000000]=548531
|
||||
|
||||
+++++++++++++++++ ex1
|
||||
ex1.bash : res=21996
|
||||
time: 0:00.23 real, 0.16 user, 0.03 sys
|
||||
context-switch: 19+99, page-faults: 0+9381
|
||||
time: 0:00.14 real, 0.11 user, 0.02 sys
|
||||
context-switch: 12+120, page-faults: 0+7974
|
||||
|
||||
ex1-c : res=21996
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+71
|
||||
context-switch: 0+1, page-faults: 0+76
|
||||
|
||||
+++++++++++++++++ ex2
|
||||
ex2.bash : res=650080463519
|
||||
time: 0:06.58 real, 6.54 user, 0.04 sys
|
||||
context-switch: 662+95, page-faults: 0+10210
|
||||
context-switch: 201+114, page-faults: 0+8893
|
||||
|
||||
ex2-c : res=650080463519
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+71
|
||||
context-switch: 0+1, page-faults: 0+74
|
||||
|
||||
=========================================
|
||||
================= day17 =================
|
||||
|
@@ -1,16 +1,16 @@
|
||||
ex1.bash : res=2386
|
||||
time: 0:41.94 real, 41.86 user, 0.03 sys
|
||||
context-switch: 4503+14, page-faults: 0+1329
|
||||
time: 0:33.55 real, 33.12 user, 0.42 sys
|
||||
context-switch: 179+18, page-faults: 0+1948
|
||||
|
||||
ex1-c : res=2386
|
||||
time: 0:00.01 real, 0.01 user, 0.00 sys
|
||||
context-switch: 1+1, page-faults: 0+91
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+90
|
||||
|
||||
ex2.bash : res=2091
|
||||
time: 1:20.09 real, 80.00 user, 0.03 sys
|
||||
context-switch: 8232+13, page-faults: 0+1721
|
||||
time: 1:08.60 real, 68.56 user, 0.02 sys
|
||||
context-switch: 530+10, page-faults: 0+1480
|
||||
|
||||
ex2-c : res=2091
|
||||
time: 0:00.01 real, 0.01 user, 0.00 sys
|
||||
context-switch: 2+1, page-faults: 0+91
|
||||
context-switch: 6+1, page-faults: 0+90
|
||||
|
||||
|
@@ -107,7 +107,8 @@ NROWS=${#rowsstr[@]}
|
||||
#echo "L=$RLENGTH N=$NROWS"
|
||||
|
||||
# add floor rows at beginning and end
|
||||
printf -v floor '%0.s0 ' $(seq 1 $((RLENGTH+2)))
|
||||
printf -v floor '%0.s0 ' $(eval "echo {1..$((RLENGTH+2))}")
|
||||
|
||||
#echo floor="$floor"
|
||||
#echo floor="$floor"
|
||||
#echo
|
||||
|
@@ -84,8 +84,7 @@ done
|
||||
|
||||
NCOLS=${#rowsstr[0]}
|
||||
NROWS=${#rowsstr[@]}
|
||||
|
||||
printf -v zeroed '%0.s0 ' $(seq 1 $(((NCOLS+2)*(NROWS+2))))
|
||||
printf -v zeroed '%0.s0 ' $(eval "echo {1..$(((NCOLS+2)*(NROWS+2)))}")
|
||||
|
||||
# split arrays in integers
|
||||
for ((r=0; r<NROWS; ++r)); do
|
||||
|
@@ -162,7 +162,7 @@ NCOLS=${#rowsstr[0]}
|
||||
NROWS=${#rowsstr[@]}
|
||||
SIZE=$((NCOLS * NROWS))
|
||||
|
||||
printf -v zeroed '%0.s0 ' $(seq 1 $SIZE)
|
||||
printf -v zeroed '%0.s0 ' $(eval "echo {1.. $SIZE}")
|
||||
|
||||
# split arrays in integers
|
||||
for ((r=0; r<NROWS; ++r)); do
|
||||
|
@@ -1,17 +1,18 @@
|
||||
cc -w -O3 ex1-c.c -o ex1-c
|
||||
ex1.bash : res=21996
|
||||
time: 0:00.23 real, 0.16 user, 0.03 sys
|
||||
context-switch: 19+99, page-faults: 0+9381
|
||||
time: 0:00.14 real, 0.11 user, 0.02 sys
|
||||
context-switch: 12+120, page-faults: 0+7974
|
||||
|
||||
ex1-c : res=21996
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+71
|
||||
context-switch: 0+1, page-faults: 0+76
|
||||
|
||||
cc -w -O3 ex2-c.c -o ex2-c
|
||||
ex2.bash : res=650080463519
|
||||
time: 0:06.58 real, 6.54 user, 0.04 sys
|
||||
context-switch: 662+95, page-faults: 0+10210
|
||||
context-switch: 201+114, page-faults: 0+8893
|
||||
|
||||
ex2-c : res=650080463519
|
||||
time: 0:00.00 real, 0.00 user, 0.00 sys
|
||||
context-switch: 0+1, page-faults: 0+71
|
||||
context-switch: 0+1, page-faults: 0+74
|
||||
|
||||
|
@@ -10,8 +10,8 @@ declare -i state=0 res=0
|
||||
|
||||
while read -r line; do
|
||||
if [[ $line =~ ^([a-z :]+)([0-9]+)-([0-9]+)([a-z ]+)([0-9]+)-([0-9]+)$ ]]; then
|
||||
n1=$(seq "${BASH_REMATCH[2]}" "${BASH_REMATCH[3]}")
|
||||
n2=$(seq "${BASH_REMATCH[5]}" "${BASH_REMATCH[6]}")
|
||||
n1=$(eval "echo {${BASH_REMATCH[2]}..${BASH_REMATCH[3]}}")
|
||||
n2=$(eval "echo {${BASH_REMATCH[5]}..${BASH_REMATCH[6]}}")
|
||||
for i in $n1 $n2; do
|
||||
VALID[$i]=1
|
||||
done
|
||||
|
@@ -13,9 +13,8 @@ while read -r line; do
|
||||
if [[ $line =~ ^([a-z ]+)\:\ ([0-9]+)-([0-9]+)([a-z ]+)([0-9]+)-([0-9]+)$ ]]; then
|
||||
# valid ranges
|
||||
keys[$curkey]="${BASH_REMATCH[1]}"
|
||||
n1=$(seq -s" " "${BASH_REMATCH[2]}" "${BASH_REMATCH[3]}")
|
||||
n2=$(seq -s" " "${BASH_REMATCH[5]}" "${BASH_REMATCH[6]}")
|
||||
|
||||
n1=$(eval "echo {${BASH_REMATCH[2]}..${BASH_REMATCH[3]}}")
|
||||
n2=$(eval "echo {${BASH_REMATCH[5]}..${BASH_REMATCH[6]}}")
|
||||
for i in $n1 $n2; do
|
||||
valid[$i]=1
|
||||
done
|
||||
|
Reference in New Issue
Block a user