@@ -126,21 +126,40 @@ fn write_grid(f: io::Writer, g: grid_t) {
126
126
}
127
127
}
128
128
129
- const default_grid: [ [ u8 ] ] = [ [ 0 , 4 , 0 , 6 , 0 , 0 , 0 , 7 , 2 , 0 ] , //0
130
- [ 0 , 0 , 8 , 0 , 2 , 0 , 0 , 0 , 0 , 0 ] , //1
131
- [ 7 , 0 , 0 , 8 , 0 , 0 , 0 , 0 , 0 , 0 ] , //2
132
- [ 0 , 0 , 0 , 5 , 0 , 0 , 0 , 0 , 0 , 0 ] , //3
133
- [ 0 , 5 , 0 , 0 , 0 , 3 , 6 , 0 , 0 , 0 ] , //4
134
- [ 6 , 8 , 0 , 0 , 0 , 0 , 0 , 9 , 0 , 0 ] , //5
135
- [ 0 , 9 , 5 , 0 , 0 , 6 , 0 , 7 , 0 , 0 ] , //6
136
- [ 0 , 0 , 0 , 0 , 4 , 0 , 0 , 6 , 0 , 0 ] , //7
137
- [ 4 , 0 , 0 , 0 , 0 , 7 , 2 , 0 , 3 , 0 ] , //8
138
- [ 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 , 0 ] ] ;
139
-
140
129
fn main ( ) {
141
130
let args = os:: args ( ) ;
142
- let grid = if args. len ( ) == 1 {
143
- default_grid;
131
+ let grid = if vec:: len ( args) == 1 u {
132
+ // FIXME create sudoku inline since nested vec consts dont work yet
133
+ // (#571)
134
+ let g = vec:: from_fn ( 10 u, |_i| {
135
+ vec:: to_mut ( vec:: from_elem ( 10 u, 0 as u8 ) )
136
+ } ) ;
137
+ g[ 0 ] [ 1 ] = 4u8 ;
138
+ g[ 0 ] [ 3 ] = 6u8 ;
139
+ g[ 0 ] [ 7 ] = 3u8 ;
140
+ g[ 0 ] [ 8 ] = 2u8 ;
141
+ g[ 1 ] [ 2 ] = 8u8 ;
142
+ g[ 1 ] [ 4 ] = 2u8 ;
143
+ g[ 2 ] [ 0 ] = 7u8 ;
144
+ g[ 2 ] [ 3 ] = 8u8 ;
145
+ g[ 3 ] [ 3 ] = 5u8 ;
146
+ g[ 4 ] [ 1 ] = 5u8 ;
147
+ g[ 4 ] [ 5 ] = 3u8 ;
148
+ g[ 4 ] [ 6 ] = 6u8 ;
149
+ g[ 5 ] [ 0 ] = 6u8 ;
150
+ g[ 5 ] [ 1 ] = 8u8 ;
151
+ g[ 5 ] [ 7 ] = 9u8 ;
152
+ g[ 6 ] [ 1 ] = 9u8 ;
153
+ g[ 6 ] [ 2 ] = 5u8 ;
154
+ g[ 6 ] [ 5 ] = 6u8 ;
155
+ g[ 6 ] [ 7 ] = 7u8 ;
156
+ g[ 7 ] [ 4 ] = 4u8 ;
157
+ g[ 7 ] [ 7 ] = 6u8 ;
158
+ g[ 8 ] [ 0 ] = 4u8 ;
159
+ g[ 8 ] [ 5 ] = 7u8 ;
160
+ g[ 8 ] [ 6 ] = 2u8 ;
161
+ g[ 8 ] [ 8 ] = 3u8 ;
162
+ grid_ctor ( g)
144
163
} else {
145
164
read_grid ( io:: stdin ( ) )
146
165
} ;
0 commit comments