Compare commits
3 Commits
4c829d84c1
...
b5bfb20e9b
Author | SHA1 | Date |
---|---|---|
sejo | b5bfb20e9b | |
sejo | 1da4c5f61c | |
sejo | c053911eaf |
|
@ -0,0 +1,66 @@
|
|||
function step(){
|
||||
x += velx
|
||||
y += vely
|
||||
velx += (velx>0) ? -1 : (velx<0) ? 1 : 0
|
||||
vely -= 1
|
||||
}
|
||||
|
||||
function insidearea(){
|
||||
return x>=xmin && x<=xmax && y>=ymin && y<=ymax
|
||||
}
|
||||
|
||||
function outofbounds(){
|
||||
return y<ymin
|
||||
}
|
||||
|
||||
{
|
||||
print $3
|
||||
gsub("x=","",$3)
|
||||
gsub(",","",$3)
|
||||
split($3,arr,/\.\./)
|
||||
xmin= arr[1]
|
||||
xmax = arr[2]
|
||||
print $4
|
||||
gsub("y=","",$4)
|
||||
split($4,arr,/\.\./)
|
||||
ymin= arr[1]
|
||||
ymax = arr[2]
|
||||
}
|
||||
END{
|
||||
print xmin,xmax,ymin,ymax
|
||||
maxy = 0; maxyvelx = 0; maxyvely = 0;
|
||||
count = 0
|
||||
minxa=0; minya=0; maxxa=0; maxya=0
|
||||
# 0 -75 275 74
|
||||
for(tvely=-100;tvely<=100;tvely++){
|
||||
for(tvelx=0;tvelx<=300;tvelx++){
|
||||
x=0; y=0; localmaxy = 0;
|
||||
velx = tvelx; vely = tvely;
|
||||
delete visited;
|
||||
# print "testing", velx, vely
|
||||
while(!insidearea() && !outofbounds()){
|
||||
step();
|
||||
# print x,y,velx,vely
|
||||
if(y>localmaxy) localmaxy = y
|
||||
}
|
||||
if(insidearea()){
|
||||
print "arrived"
|
||||
count++
|
||||
if(tvelx<minxa) minxa = tvelx
|
||||
if(tvely<minya) minya = tvely
|
||||
if(tvelx>maxxa) maxxa = tvelx
|
||||
if(tvely>maxya) maxya = tvely
|
||||
if(localmaxy>maxy){
|
||||
maxy = localmaxy
|
||||
maxyvelx = tvelx
|
||||
maxyvely = tvely
|
||||
# print "new max", maxy, maxyvelx, maxyvely
|
||||
}
|
||||
print tvelx, tvely, localmaxy, maxy
|
||||
}
|
||||
}
|
||||
}
|
||||
print "part 1:", maxy, maxyvelx, maxyvely
|
||||
print "part 2:", count
|
||||
print minxa, minya, maxxa, maxya
|
||||
}
|
|
@ -0,0 +1,14 @@
|
|||
1t:
|
||||
awk -f 17.awk test
|
||||
|
||||
1i:
|
||||
awk -f 17.awk input
|
||||
|
||||
2t:
|
||||
awk -f 17_2.awk test
|
||||
|
||||
2i:
|
||||
awk -f 17_2.awk input
|
||||
|
||||
paste:
|
||||
xclip -sel c -o > test
|
|
@ -27,6 +27,7 @@ awk -c -f 01.awk inputfile
|
|||
```
|
||||
-------Part 1-------- -------Part 2--------
|
||||
Day Time Rank Score Time Rank Score
|
||||
17 00:41:03 2839 0 00:56:57 2841 0
|
||||
16 00:34:15 550 0 02:21:09 3657 0
|
||||
15 16:52:00 24420 0 17:30:02 20656 0 --- thanks alderwick for your help!
|
||||
14 00:27:53 4878 0 01:07:47 3311 0
|
||||
|
|
Loading…
Reference in New Issue