This commit is contained in:
sejo 2021-12-08 00:02:54 -06:00
parent 699a789123
commit da1a7e1b70
3 changed files with 123 additions and 0 deletions

9
08/08.awk Normal file
View File

@ -0,0 +1,9 @@
{
for(i=12;i<=15;i++){
len = length($i)
count += (len==2 || len==4 || len==3 || len==7)
}
}
END{
print count
}

100
08/08_2.awk Normal file
View File

@ -0,0 +1,100 @@
{
# 2: len5 acdeg e
# 3: len5 acdfg f
# 5: len5 abdfg b<->c^ *
# 0: len6 abcefg *
# 6: len6 abdefg *
# 9: len6 abcdfg *
p5 = 0; p6=0
for(i=1;i<=10;i++){
len = length($i)
if(len==2) pat[1] = $i # 1: cf *
if(len==4) pat[4] = $i # 4: bcdf *
if(len==3) pat[7] = $i # 7: acf *
if(len==7) pat[8] = $i # 8: abcdef *
if(len==5) patn5[p5++] = $i
if(len==6) patn6[p6++] = $i
}
a = pat[7]
gsub("[" pat[1] "]" ,"",a)
bd = pat[4]
gsub("[" pat[1] "]","",bd)
for(i in patn5){
if(patn5[i]~substr(bd,1,1) && patn5[i]~substr(bd,2,1)){
pat[5] = patn5[i]
pati[5] = i
}
}
if(patn5[(pati[5]+1)%3]~substr(bd,1,1)){
d = substr(bd,1,1)
b = substr(bd,2,1)
}
else{
d = substr(bd,2,1)
b = substr(bd,1,1)
}
for(i in patn6){
#print patn6[i]
if( patn6[i]!~d ){
pat[0] = patn6[i]
pati[0] = i
}
temp = patn6[i]
gsub("[" pat[4] "]","", temp)
if(length(temp)==2){
pat[9] = patn6[i]
pati[9] = i
gsub(a, "", temp)
g = temp
}
}
for(i in patn6){
if(i!=pati[9] && i!=pati[0]){
pat[6] = patn6[i]
e = pat[6]
gsub("[" a b d g "]","",e)
f = e
gsub("[" pat[1] "]","",e)
gsub("[^" pat[1] "]","",f)
c = pat[1]
gsub(f,"",c)
}
}
# print "a:", a, "b:", b, "c:",c, "d:", d, "e:", e,"f:",f, "g:", g
for(i in patn5){
if(i!=pati[5]){
if(patn5[i]~e) pat[2]=patn5[i]
else if(patn5[i]~f) pat[3]=patn5[i]
}
}
for(i=0;i<=9;i++)
# print i,":", pat[i]
num = ""
for(i=12;i<=15;i++){
# print $i
len = length($i)
if(len==2) digit = 1
else if(len==4) digit = 4
else if(len==3) digit = 7
else if(len==7) digit = 8
else if(len==5){
if( $i~e ) digit = 2
else if($i~b) digit = 5
else digit = 3
}
else if(len==6){
if( $i~c && $i~e ) digit = 0
else if($i~e) digit = 6
else digit= 9
}
num = num digit
}
print num
sum += num
}
END{
print sum
}

14
08/Makefile Normal file
View File

@ -0,0 +1,14 @@
1t:
awk -c -f 08.awk test
1i:
awk -c -f 08.awk input
2t:
awk -c -f 08_2.awk test
2i:
awk -c -f 08_2.awk input
paste:
xclip -sel c -o > test