diff --git a/19/19.awk b/19/19.awk new file mode 100644 index 0000000..72e6314 --- /dev/null +++ b/19/19.awk @@ -0,0 +1,44 @@ +function abs(n){ + return (n>=0) ? n : -n +} + +function diff(s1, s2){ + split(s1,a1,",") + split(s2,a2,",") + sr = "" + for(i in a1) + sr = sr abs(a1[i]-a2[i]) (i<3? "," : "") + return sr +} + +function similar(d1, d2){ + split(d1,a1,",") + split(d2,a2,",") + if(a1[1]==a2[1] && a1[2]==a2[2] && a1[3]==a2[3]) return 1 + if(a1[1]==a2[1] && a1[2]==a2[3] && a1[3]==a2[2]) return 2 + if(a1[1]==a2[2] && a1[2]==a2[1] && a1[3]==a2[3]) return 3 + if(a1[1]==a2[2] && a1[2]==a2[3] && a1[3]==a2[1]) return 4 + if(a1[1]==a2[3] && a1[2]==a2[1] && a1[3]==a2[2]) return 5 + if(a1[1]==a2[3] && a1[2]==a2[2] && a1[3]==a2[1]) return 6 + return -1 +} + +BEGIN{ + +} +NR%2==1{ + s1 = $0 + next +} + +{ + r = diff(s1,$0) + diffs[++diffsp] = r +} + +END{ + print diffsp + for(i=1; i test