source: applications/trunk/UGPSummerSchool2008/src/Sequence.rf @ 3837

Last change on this file since 3837 was 3837, checked in by orlov, 12 years ago
  • Added task description.
  • Property svn:eol-style set to native
  • Property svn:keywords set to "Author Date Id Revision"
File size: 1.3 KB
Line 
1// Arrange three 1s, three 2s, ..., three 9s in sequence so that for all
2// i in [1, 9] there are exactly i numbers between successive occurrences
3// of i. An example of such a sequence is 1, 9, 1, 2, 1, 8, 2, 4, 6, 2,
4// 7, 9, 4, 5, 8, 6, 3, 4, 7, 5, 3, 9, 6, 8, 3, 5, 7.
5// (http://people.csail.mit.edu/namin/bits/reasoned-schemer/sequence-program.scm.html)
6
7$use StdIO;
8
9$func Main = e;
10
11Main, {
12        X X X X X X X X X X X X X X X X X X X X X X X X X X X :: ex,
13        ex : e91 X e92 X e93 X e94, e92 : s s s s s s s s s, e93 : s s s s s s s s s,
14        e91 9 e92 9 e93 9 e94 :: ex,
15        ex : e81 X e82 X e83 X e84, e82 : s s s s s s s s, e83 : s s s s s s s s,
16        e81 8 e82 8 e83 8 e84 :: ex,
17        ex : e71 X e72 X e73 X e74, e72 : s s s s s s s, e73 : s s s s s s s,
18        e71 7 e72 7 e73 7 e74 :: ex,
19        ex : e61 X e62 X e63 X e64, e62 : s s s s s s, e63 : s s s s s s,
20        e61 6 e62 6 e63 6 e64 :: ex,
21        ex : e51 X e52 X e53 X e54, e52 : s s s s s, e53 : s s s s s,
22        e51 5 e52 5 e53 5 e54 :: ex,
23        ex : e41 X e42 X e43 X e44, e42 : s s s s, e43 : s s s s,
24        e41 4 e42 4 e43 4 e44 :: ex,
25        ex : e31 X e32 X e33 X e34, e32 : s s s, e33 : s s s,
26        e31 3 e32 3 e33 3 e34 :: ex,
27        ex : e21 X e22 X e23 X e24, e22 : s s, e23 : s s,
28        e21 2 e22 2 e23 2 e24 :: ex,
29        ex : e11 X e12 X e13 X e14, e12 : s, e13 : s,
30        e11 1 e12 1 e13 1 e14 :: ex,
31        <PrintLn ex>, $fail;; };
Note: See TracBrowser for help on using the repository browser.