Imagine Cup 2008 Match 1 Summary
LeaderBoard
1 | Rac | 47687 | Poland | Politechnika Krakowska |
2 | Jedi_Knight | 47326 | Russia | Moscow State University |
3 | XarN | 46798 | Poland | AGH University of Science and Technology |
4 | chokudai | 46085 | Japan | Senior High School at Komaba, University of Tsukuba |
5 | Eirik Reksten | 44674 | Norway | Norwegian University of Science and Technology |
6 | szsz | 44297 | Hungary | Illyes Gyula High School |
7 | FloppyCat | 43826 | Lithuania | vilnius university |
8 | sempik | 43620 | Poland | Jagiellonian University |
9 | JasonKing | 43603 | China | HUST |
10 | r1cs1 | 43511 | Hungary | Budapest University of Technology and Economics |
11 | kim-my | 43446 | Russia | MSU |
12 | Xianchao | 43271 | United States | Harvard University |
13 | Gribok | 43221 | Russia | Ivanovo State Power University |
14 | jackvsalmond | 43038 | China | Huazhong University of Science and Techmnology |
15 | Lyt | 42966 | China | Huazhong University of Science and Technology |
16 | kg86 | 42931 | Poland | Jagiellonian University |
17 | DjubaRS | 42545 | Russia | Moscow Institute of Physics and Technologies (MIPT) |
18 | EmK | 42507 | Japan | Saitama University |
19 | ardiankp | 42415 | Indonesia | NANYANG TECHNOLOGICAL UNIVERSITY |
20 | Gorion | 42386 | Poland | Warsaw University |
21 | Jamal | 42385 | Poland | Wroclaw University of Technology, Faculty of Informatics and Management |
22 | Krochak | 42367 | Russia | Moscow state Aviation Institute |
23 | permil | 42365 | Japan | Tokyo Institute of Technology |
24 | mrLEE | 42359 | Russia | Moscow state Aviation Institute |
25 | Slimi | 42344 | Morocco | EMSI |
26 | Castle.Derek | 41978 | China | 华工 |
27 | shaoanxu | 41934 | China | tsinghua university |
28 | Mr.Herbert | 41885 | China | 华中科技大学 |
29 | TOP | 41877 | China | tsinghua university |
30 | Leszek Horwath | 41868 | Poland | Jagiellonian University |
31 | Skadanov Alex | 41740 | Russia | Izhevsk State Technical University |
32 | viewlagoon | 41731 | Japan | 筑波大学附属駒場高等学校 |
33 | Grey | 41610 | Russia | Ivanovo State University of Chemistry and Technology |
34 | Lanethan | 41555 | Singapore | Carnegie Mellon University |
35 | minhduc | 41516 | Viet Nam | National University of Singapore |
36 | spring.field | 41515 | China | 华科大 |
37 | KTropin | 41393 | Russia | Moscow Institute of Physics and Technologies (MIPT) |
38 | lunar | 41277 | Japan | Takada High School |
39 | mostafaizz | 41223 | Egypt | Cairo University - Faculty of Engineering |
40 | Herbi | 41060 | Poland | Wroclaw University of Technology, Faculty of Informatics and Management |
41 | Roman Koshlyak | 41043 | Ukraine | Kiev National University |
42 | Diab1o | 41008 | Russia | Moscow state Aviation Institute |
43 | monae | 40866 | Japan | University of Tokyo |
44 | Piovesan Carlo | 40865 | Italy | Scuola Superiore Sant'Anna |
45 | Vanka | 40583 | Russia | SPb SPU |
46 | andrejko | 40477 | Serbia | Faculty of Mathematics and Sciences Nis |
47 | Exelle | 40105 | Romania | "Al. I. Cuza" University of Iasi |
48 | yunfzhang | 39837 | China | Hohai Unversity |
49 | MevanAlles | 39751 | Sri Lanka | Department of Computer Science & Engineering ( CSE ), University of Moratuwa |
50 | snard6 | 39681 | United States | University of Utah |
87 | duguguiyu | 31772 | China | tsinghua university |
Level Stats
Levelx | Num Solvesx | Avg Time To Solve (HH:MM:SS)x | Min Bytesx | Avg Bytes of Solutionsx | Max Pointsx | # Max Point Solutions |
1 | 1240 | 0:01:58 | 9 | 16.3 | 244 | 24 |
2 | 780 | 0:04:36 | 11 | 13.5 | 381 | 9 |
3 | 1047 | 0:01:35 | 12 | 16.9 | 733 | 99 |
4 | 384 | 0:09:45 | 18 | 20.8 | 466 | 1 |
5 | 783 | 0:02:17 | 22 | 28.5 | 704 | 1 |
6 | 481 | 0:06:07 | 13 | 18.7 | 769 | 13 |
7 | 392 | 0:06:00 | 20 | 23.0 | 1300 | 26 |
8 | 159 | 0:13:05 | 23 | 24.2 | 1291 | 75 |
9 | 145 | 0:15:14 | 25 | 28.8 | 1364 | 5 |
10 | 424 | 0:06:08 | 19 | 25.9 | 1831 | 1 |
11 | 361 | 0:06:20 | 18 | 27.6 | 2133 | 1 |
12 | 474 | 0:03:12 | 15 | 19.3 | 1820 | 75 |
13 | 90 | 0:22:33 | 35 | 40.1 | 1597 | 7 |
14 | 123 | 0:16:46 | 22 | 24.7 | 1718 | 3 |
15 | 566 | 0:04:11 | 21 | 30.1 | 2428 | 8 |
16 | 669 | 0:02:04 | 12 | 25.2 | 4750 | 12 |
17 | 2 | 0:49:40 | 26 | 26.0 | 1500 | 2 |
18 | 10 | 1:01:45 | 21 | 21.0 | 1600 | 10 |
19 | 426 | 0:03:26 | 16 | 21.6 | 2443 | 21 |
20 | 119 | 0:22:26 | 10 | 13.8 | 3570 | 13 |
21 | 167 | 0:21:53 | 13 | 19.2 | 3046 | 17 |
22 | 113 | 0:19:26 | 15 | 17.0 | 2640 | 43 |
23 | 368 | 0:05:52 | 13 | 21.8 | 4500 | 65 |
24 | 287 | 0:07:48 | 26 | 31.3 | 3096 | 3 |
25 | 373 | 0:12:28 | 15 | 32.4 | 7200 | 1 |
Experiences about random paths
I don't say whether random paths are nice or not, but in match 1 random paths definitely give not less than 5k.
The high-points levels in which random paths applied are 16 (+3k!), 20, 25 (+4k!)
There are some points here:
- In levels which have few grey dots, there are 99% about existence of random paths (as in level 16, 20)
- Even in levels which have a half of grey dots and wall like level 25, there are still random paths.
Level 25: This is because grey dots only appears in the even rows/even columns and in the sides of map. So if we consider for example ssllssss is a pace, there appears a bunch of random paths!
So,- What kind of map can avoid random paths?
The answer: "map that have many grey dots" are definitely not true.
I hope everyone will share your opinions / experiences.
After using some random paths, I wanna to share my little knowledge
for Herbert's newbies in later match (in case there are still such
beneficial levels :) )
A random path is actually not random (each time, it behaves similarly). Because of the complex characteristics of wall\side effect, however, a random path behaves unpredictably.
I have seen two groups of random paths:
* With numbers:
e.g.
f(N):sf(N-5)rf(N-7)
f(41)
* Without numbers:
e.g.
f(A):Af(ArAA)
f(s)
In fact, random paths behave very randomly. In level 16, my random path does not guarantee to not touch the grey dots, and it did touch the grey dots for some times. However, it still solved the level, and the only reason I have for this case is there are so few grey dots. In level 25, I even found a path that touched every white dots except one. (I guess it's even harder to find this than to find a solution :p)
But in certain cases, I believe there are some rules. A simple rule
is that you realize there is a unit step, say x, such that if you call
x (assigned to A) then call a simple combination of A, r, l, e.g. ArAA,
then call that combination again, etc... you will surely not touch the
grey dots. Your path will only run in a certain region of the map. Try
and see:
f(A):Af(AAlA)
f(ss)
In many cases, it seems that your path's region covers all the white dots, but why doesn't it touch all? I don't understand this (and also don't know whether it can be understandable) :p. So here a computer program will have you find the solution faster. Remember, if you find a random path that earns about 1/3 points (e.g. 1000/3000), you can believe that there is a random solution.
Random paths are often very short and can help earn a lot points.
But some are very slow, for example my solution on level 25 took me 3
hours to run on ICHerbert.
From my experience, I have this form of random path:
f(A):Af( [a combination of x, l, r, A] )
f()
Where x is the unit step.
I hope people, especially the experts like Rac, Sempik... will share your knowledge.
Finally, there are some talented ones who did not use random path but still stayed at top places (Chokudai is one of them). However, I believe that when this game becomes more popular, there will be more people using simulators. Then if there are still such levels, someday you won't be qualified without random paths. I hope I'm not right :)
Problems
6
7
8
9
10
11
12
13
14
17
18
19
20
21
22
23
24
25
Solutions
Top 1 : Rac
1: simu (9)
4:
f(X):lXXX
rf(f(ssf(ss)sslf(s)s)) I dont remember if I had not 19 bytes solution...
5:
f(X,Y):YYYYf(sXsrsl,ssXrrXssl) (24)
f(,)
6:
f(X,Y):rXf(ssXY,Ys) (17)
f(srs,s)
7:
f(X,Y):rXf(X,Y-1) (20)
f(f(f(slsss,12),2),20)
8:
f(X):df(X-1) (24)
d:lsrs
m:f(9)rsf(10)sldlm
m
9:
f(X):XXrs (25)
c:ssss
d:f(f(clf(c)lcr)sr)d
d
10:
f(X):srslf(X-1) (23)
c:f(12)lf(11)lf(13)lssc
c
11:
g(X,Y):XXXXYX (20)
g(g(g(g(g(s,r)l,)rr,)r,),)
12:
f(X):XXrf(Xssrssl) (15)
f(r)
13:
c:m(m(s,),) (39)
m(X,Y):XYX
g(X,Y):g(srslX,Y-1)m(cXXsc,m(XlX,)s)csrr
g(r,4)
14:
f(X,Y):Xssrsssrf(sX,Y-1)
f(ls,14)f(ssl,100)
in fact had 24 solution, very similar to this one
something close to
f(X,Y):Xsslssrsssrf(sX,Y-1)
lf(,15)f(,100)
15:
f(Y):srslf(Y-1)r (22)
c:f(12)rssf(11)f(26)c
c
16:
f(X,Y):rXf(Xssss,Y-1)f(,15) (17)
f(,14)
f(X):Xf(XrXsl) (SIMU) (12)
f(ss)
17:
g(X,Y):XXsXddXsg(Xd,Y-1) (partial 30 - pattern, 28 - for more points)
d:ss
c:rrdg(ls,7)c
sc
g(X,Y):XXsXddXsg(Xd,Y-1)l
d:ss
srg(rdg(ls,7),1)
18: (21/21) (favourite level of most competitiors :P)
f(X):srslf(X-1)ssl
c:f(18)f(15)f(2)c
c
19: (16)
f(X):lssrssf(X-1)rf(9)
f(9)
20: (SIMU) (10)
f(X):Xf(lXrXs)
f()
21: (14)
f(X):XXf(Xllsrsr)
f(l)
22: (15)
it was something like:
f(X,Y):Xf(YlXXlY,Yss)
f(,)
23: (13 or 14) (SIMU)
24:
f(X,Y):drXldlXrf(Xdd,Y-1) (30)
d:ss
c:f(d,3)f(d,3)rc
c
25: (25)
f(X,Y):f(ssX,Y-1)XssrXr
c:f(r,13)f(l,3)lc
c
To solve 18 most important thing was to realize that this strange squares can be drawn by sometihng like
f(X):something f(X-1)ssl
Drawing square in the end of path additionally turns the robot in a direction depending on length of path.
I assumed that only possible solution (if using described function and taking into consideration symmetry)
must be
f(X):Af(X-1)B
c:f(C)f(D)f(E)c
c
where A belongs to {slsr,lsrs,srsl,rsls} B belongs to {ssl,ssr,lss,rss,srs,lsl}
where C,D,E were such numbers that robot would end path drawing a square (squares were easy to recognize)
Now we have to eliminate possibilities, or use simu to do that faster ;)
It was one of most difficult levels, and in fact it was accident that i managed to solve it.
Top 4 : chokudai
My solutions is here.
http://chota.mine.nu/herbert/2008_1.txt
Min bytes Solutions
1,9/22(min:9)
a(A):Aa(sAAr)
a()
3,12/22(min:12)
a(A):Alsssla(As)
a()
7,20/26(min:20)
b(B,C):CCCCb(slsssrB,BBr)
b(r,)
8,23/27(min:23)
a(A):lsrsa(A-1)
f:a(9)rsa(10)sla(1)lf
f
9,25/31(min:25)
a(A):AAr
d:ssss
f:a(a(dla(d)sldr)a(s))f
f
12,15/21(min:15)
b(B):BBrb(Bssrssl)
b(r)
14,22/27(min:22)
a(A):b()Alb()sa(As)
b(B):sBsBr
b(b(ss))a()
18,21/21(min:21)
a(A):srsla(A-1)ssl
b:a(22)a(15)a(2)b
b
19,16/23(min:16)
d(D):ssrssld(D-1)rd(9)
d(9)
20,10/21(min:10) (using simulator :(
a(A):Aa(lArAs)
a()
22,15/22(min:15)
b(B,C):Bb(CrBBrC,Css)
b(,)
23,13/26(min:13)
b(B):Brrb(ssrslB)
b()
24,26/35(min:26)
a(A,B,C):BBAa(Ass,rrB,C-1)
a(a(r,a(,rss,6),1),,10)
Now I find shortest Level 13
Level 13 35/43(min:35)
a(A):ssssAAs
c(D,E):c(srslD,E-1)a(D)a(DlD)a(D)a()sa(r)
c(r,4)
Top 5 : Eirik Reksten
Level 21 (13/22):
b(A):AAb(srslA)
b(ls)
Level 23 (13/26):
e(A):Arre(ssrslA)
e()
Top 6 : szsz
1 9/14
q(X):Xq(sXXl)
q()
2 11/14
q(X):Xq(XssXrX)
q()
3 15/22
d:sslsssl
a:ddssa
a
4 21/21
q:ss
w:qlqqqqrrqq
h:lwww
hh
5 25/31
a(X):XXXXX
g:a(s)a(srsl)
a(ssgrrgssr)
6 17/20
a(X):XXXX
p:srsl
a(ssa(a(s)sa(p)prr)rrssr)
7 22/26
a(X):XXX
f:rsla(s)
q:a(a(f))l
a(a(qqfl))
8 -/27
9 31/31
a(X):XX
d:a(ss)
w:a(rdlddrsld)
lwa(a(a(rrsswlw)))
10 23/29
a(X):slsra(X-1)
q:a(11)sla(10)sla(12)lq
q
11 25/32
a(X):XXXXX
b(X):a(X)b(rslsssa(sr)lX)
b(r)
12 15/21
g(X):XlXg(lXsslssr)
g()
13 -/43
14 23/27
q(X,Y):lssrsssrXq(Xs,Y-1)
q(,21)rrq(,25)
15 24/34
f(X):slsrf(X-1)
w:f(11)l
d(X):ssXd(Xwlw)
d()
16 12/38
q(X):Xq(slXssX)
q(r)
17 -/26
18 -21
19 20/23
a(X):XXX
g:ra(a(rsslss))
a(a(grg))
d
20 10/21
q(X):Xq(lXXs)
q(l)
21 18/22
q:slsr
d(X):XXXXd(Xqqq)
d(r)
22 17/22
h(X,Y):XXh(YXXrYl,Yss)
h(,r)
23 13/26
d(X):Xd(ssrslX)
d(rr)
24 30/35
w:ss
d(X,Y):rwrXlwlXd(Xww,Y-1)
g:d(w,3)
c:rggc
c
25 15/36
q(X):XXq(rssXXr)
q(sss)
Top 7 : FloppyCat
level 17
a(X,Y,N):XYa(Yss,X,N-1)q:lla(sls,lss,14)q
q
a(X,Y,N):XYa(Yss,X,N-1)lla(sls,lss,14)
a(,,1)
Top 8 : sempik
Lvl 6: 14/20 bytes
f(X,Y):XYf(sXs,Xl)
f(sl,)
Lvl 9: 27/31
w:ssss
b:wlwwrslwr
c:bbrssrbblc
c
Lvl 10: 23/29
w(A):rslsw(A-1)
a:w(12)lsw(10)lsw(11)la
a
Lvl 13: 37/43
v:sssss
g(A,X):sg(A-1,srslX)XXvXlXXlXvXXvsrr
g(4,r)
Lvl 15: 24/34
w(A):srslw(A-1)
v:w(12)rssw(11)
vlw(23)llv
Lvl 16: 12/38
f(X):Xf(slXsX)
f(rs)
Lvl 19: 17/23
t(X):XXX
t(t(t(rt(t(sslssr)))))
Lvl 20: 10/21
f(X):Xf(lXrXs)
f()
Lvl 21: 13/22
f(X):XXf(Xlsrs)
lf(l)
Lvl 23: 13/26
f(X):Xf(ssrslX)
f(ll)
Top 21 : Jamal
level which I had better done than sempik or Rac only :
6 13 20
f(A,B):Af(lBABr,Bs)
f(,)
15 21 34
x(A):sx(A-1)
f(A):x(A)lx(24)lf(A-2)
f(23)f(25)
19 16 23
x(A):sslssrx(A-1)rx(9)
x(9)
======================
all of my solutions, for someone who is interested in:
1 12 22
f(A):AAf(Aslsr)
f(r)
2 13 14
z:ssrsss
f:lzzf
f
3 12 22
x(A):Alssslx(sA)
x()
4 21 21
x:ssss
z:sslxxllx
f:lzzzf
f
5 24 31
x(A):rslsx(A-1)s
f:x(5)ssl
z:ssflfz
z
6 13 20
f(A,B):Af(lBABr,Bs)
f(,)
7 21 26
x(A):rslsssx(A-1)
f:x(12)r
g:ffrg
g
8 23 27
x(A):lsrsx(A-1)
z:x(9)rsx(10)slx(1)lz
z
9 27 31
x:ssss
w:xlxxrslxr
f:wrssrwwlf
wf
10 23 29
x(A):rslsx(A-1)
g:x(12)lsx(10)lsx(11)lg
g
11 23 32
u(A):AAA
h:u(ru(s)srs)ll
u(u(u(h)srhh))
12 15 21
x(A):AArx(sslssrA)
x(r)
13 42 43
z:ssss
f:lsrs
h(A):rArAzs
g(A,B,C):g(ffA,fB,C-1)h(B)h(A)h(B)sll
zg(,,4)
14 24 27
z(A):Alssrxrz(As)
x:sss
xxxxrxz(s)
15 21 34
x(A):sx(A-1)
f(A):x(A)lx(24)lf(A-2)
f(23)f(25)
16 19 38
w(A):AAAA
w(lw(lw(rw(w(s))))llw(s))
17 ----
18 21 21 (not full solution)
x(A):srslx(A-1)
g:x(18)rx(9)rx(8)rg
g
19 16 23
x(A):sslssrx(A-1)rx(9)
x(9)
20 12 21
x(A):sx(A-5)lx(A-7)
x(87)
21 21 22
z:rslsr
x(A,B):zAzBx(sssB,A)
x(s,)
22 15 22
z(A,B):Bz(ssA,ArBBrA)
z(,)
23 13 26
g(B):Bllg(ssrslB)
g()
24 30 35
a:ss
g(A,B):g(A-1,aaB)BrarBlal
z:g(3,a)
h:zlzh
h
25 25 36
f(A,B):sf(Ass,B-1)rArssrAr
g:f(,13)rsg
g
Top 35 : minhduc
Level 13:
My solution: 41/43 (heart-shaped :)
y:ssss
c(N,A,B):c(N-1,Alsrs,AAysAlAAlAysAAyssll)B
yc(5,r,)
I'd like to see shorter solution...
Level 16:
My solution: 16/38 (random)
f(A):Af(AAlAAl)
f(rssss)
I wonder what the min-bytes solution looks like :|
Level 22: 17/22 (a fractal pattern)
f(A,B):Blf(ssA,ABrBA)
f(l,r)
Again, what's about 15/22..
Level 25: 16/36 (random)
f(A):Af(lAAllAAssAr)
f()
Top 49 : MevanAlles
Level 5 - 23 / 31
f(A):srslf(A-1)ss
a:sf(5)lslf(4)la
a
Level 10 22 / 29
f(A):srslf(A-1)
b:lsf(12)
a:blf(11)ba
a
Level 11 23 / 32
f(A):AAAA
b:f(f(s)rsl)sssr
f(f(f(b)bs))
Level 12 16 / 21
f(A):ArArrf(ssrsslA)
f()
Level 13 43 / 43 ( i hate this level even if I solved it :( )
g(A,B):AABAA
b:g(s,s)
f(A,C):f(srslA,C-1)g(s,)rg(A,rbg(Ar,rr)b)
g(b,rr)sf(,4)
Level 14 24 / 27
a:ssrsss
f(A):Alarf(sA)
alasrraf()
Level 16 20 / 38
a:ssss
f(A):Alf(araAala)
f(rr)
Level 17 (partial, feel sad as I cudnt compress this solutions to 26 bytes... :( )
37 /26
f(A,B):ABA
g(A,B):f(f(Al,s),f(ss,))g(ssA,B-1)
a:g(s,7)lssla
rrsla
another one
40 / 26
f(A,B):AlAslAsslAssssslf(ssA,B-1)
b:lsf(,7)lf(,1)f(,1)f(,1)b
lb
Level 18 ( this too i found this last night didnt have time to change the approach to get in max bytes :(. I went clockwise & ended up with this.. I wud have figured it out if I went to anti clock wise approach lols. but feels sad though almost had it )
29 / 21
f(A):lsrsf(A-1)srs
b:f(4)f(8)rf(9)f(9)f(4)rf(3)b
b
Level 19/ 23
f(A):sslssrf(A-1)r
a:f(9)f(10)a
a
Level 20 21 / 21
this is the 21 byte solution I found.
g(A):rg(A-3)ssssrssslg(A-5)s
g(151)
This below one is a non random path for Level 20. I would be
thankful if someone can let me know a way of optimizing it. it went
29/21
f(A):srslf(A-1)l
g(A):f(A)rf(A-1)f(A-2)f(A-3)g(A-4)
g(24)
Level 22 15 / 22
f(A,B):Af(BlAAlB,ssB)
f(,)
Level 23 13 / 26
f(A):Arrf(ssrslA)
f()
Level 24 30 / 35
a:ss
f(A,B):arAlalArf(aaA,B-1)
b:f(a,3)
c:bbrc
c
Level 25
Best one 26 / 36
g(A,B,C):g(A-2,ssB,Br)rCssrC
b:g(28,,)rg(14,,)b
b
Another path 28 / 36
f(A):sf(A-1)
g(A):f(A)rssrf(A)rrg(A-2)s
d:g(24)ld
d
posted on 2007-12-07 00:01 duguguiyu 阅读(1599) 评论(0) 编辑 收藏 举报