Cody

# Problem 1471. Index of a Rational number

Solution 2001673

Submitted on 4 Nov 2019 by Asif Newaz
This solution is locked. To view this solution, you need to provide a solution of the same size or smaller.

### Test Suite

Test Status Code Input and Output
1   Pass
p=1; q=3; y_correct = 6; assert(isequal(cantor_rational2index(p,q),y_correct))

i = 2 j = 1 k = 2 i = 1 j = 2 k = 3 i = 3 j = 1 k = 4 i = 2 j = 2 k = 5 i = 1 j = 3 k = 6 out = 6

2   Pass
p=2; q=3; y_correct = 9; assert(isequal(cantor_rational2index(p,q),y_correct))

i = 2 j = 1 k = 2 i = 1 j = 2 k = 3 i = 3 j = 1 k = 4 i = 2 j = 2 k = 5 i = 1 j = 3 k = 6 i = 4 j = 1 k = 7 i = 3 j = 2 k = 8 i = 2 j = 3 k = 9 out = 9

3   Pass
p=22; q=7; y_correct = 385; assert(isequal(cantor_rational2index(p,q),y_correct))

i = 2 j = 1 k = 2 i = 1 j = 2 k = 3 i = 3 j = 1 k = 4 i = 2 j = 2 k = 5 i = 1 j = 3 k = 6 i = 4 j = 1 k = 7 i = 3 j = 2 k = 8 i = 2 j = 3 k = 9 i = 1 j = 4 k = 10 i = 5 j = 1 k = 11 i = 4 j = 2 k = 12 i = 3 j = 3 k = 13 i = 2 j = 4 k = 14 i = 1 j = 5 k = 15 i = 6 j = 1 k = 16 i = 5 j = 2 k = 17 i = 4 j = 3 k = 18 i = 3 j = 4 k = 19 i = 2 j = 5 k = 20 i = 1 j = 6 k = 21 i = 7 j = 1 k = 22 i = 6 j = 2 k = 23 i = 5 j = 3 k = 24 i = 4 j = 4 k = 25 i = 3 j = 5 k = 26 i = 2 j = 6 k = 27 i = 1 j = 7 k = 28 i = 8 j = 1 k = 29 i = 7 j = 2 k = 30 i = 6 j = 3 k = 31 i = 5 j = 4 k = 32 i = 4 j = 5 k = 33 i = 3 j = 6 k = 34 i = 2 j = 7 k = 35 i = 1 j = 8 k = 36 i = 9 j = 1 k = 37 i = 8 j = 2 k = 38 i = 7 j = 3 k = 39 i = 6 j = 4 k = 40 i = 5 j = 5 k = 41 i = 4 j = 6 k = 42 i = 3 j = 7 k = 43 i = 2 j = 8 k = 44 i = 1 j = 9 k = 45 i = 10 j = 1 k = 46 i = 9 j = 2 k = 47 i = 8 j = 3 k = 48 i = 7 j = 4 k = 49 i = 6 j = 5 k = 50 i = 5 j = 6 k = 51 i = 4 j = 7 k = 52 i = 3 j = 8 k = 53 i = 2 j = 9 k = 54 i = 1 j = 10 k = 55 i = 11 j = 1 k = 56 i = 10 j = 2 k = 57 i = 9 j = 3 k = 58 i = 8 j = 4 k = 59 i = 7 j = 5 k = 60 i = 6 j = 6 k = 61 i = 5 j = 7 k = 62 i = 4 j = 8 k = 63 i = 3 j = 9 k = 64 i = 2 j = 10 k = 65 i = 1 j = 11 k = 66 i = 12 j = 1 k = 67 i = 11 j = 2 k = 68 i = 10 j = 3 k = 69 i = 9 j = 4 k = 70 i = 8 j = 5 k = 71 i = 7 j = 6 k = 72 i = 6 j = 7 k = 73 i = 5 j = 8 k = 74 i = 4 j = 9 k = 75 i = 3 j = 10 k = 76 i = 2 j = 11 k = 77 i = 1 j = 12 k = 78 i = 13 j = 1 k = 79 i = 12 j = 2 k = 80 i = 11 j = 3 k = 81 i = 10 j = 4 k = 82 i = 9 j = 5 k = 83 i = 8 j = 6 k = 84 i = 7 j = 7 k = 85 i = 6 j = 8 k = 86 i = 5 j = 9 k = 87 i = 4 j = 10 k = 88 i = 3 j = 11 k = 89 i = 2 j = 12 k = 90 i = 1 j = 13 k = 91 i = 14 j = 1 k = 92 i = 13 j = 2 k = 93 i = 12 j = 3 k = 94 i = 11 j = 4 k = 95 i = 10 j = 5 k = 96 i = 9 j = 6 k = 97 i = 8 j = 7 k = 98 i = 7 j = 8 k = 99 i = 6 j = 9 k = 100 i = 5 j = 10 k = 101 i = 4 j = 11 k = 102 i = 3 j = 12 k = 103 i = 2 j = 13 k = 104 i = 1 j = 14 k = 105 i = 15 j = 1 k = 106 i = 14 j = 2 k = 107 i = 13 j = 3 k = 108 i = 12 j = 4 k = 109 i = 11 j = 5 k = 110 i = 10 j = 6 k = 111 i = 9 j = 7 k = 112 i = 8 j = 8 k = 113 i = 7 j = 9 k = 114 i = 6 j = 10 k = 115 i = 5 j = 11 k = 116 i = 4 j = 12 k = 117 i = 3 j = 13 k = 118 i = 2 j = 14 k = 119 i = 1 j = 15 k = 120 i = 16 j = 1 k = 121 i = 15 j = 2 k = 122 i = 14 j = 3 k = 123 i = 13 j = 4 k = 124 i = 12 j = 5 k = 125 i = 11 j = 6 k = 126 i = 10 j = 7 k = 127 i = 9 j = 8 k = 128 i = 8 j = 9 k = 129 i = 7 j = 10 k = 130 i = 6 j = 11 k = 131 i = 5 j = 12 k = 132 i = 4 j = 13 k = 133 i = 3 j = 14 k = 134 i = 2 j = 15 k = 135 i = 1 j = 16 k = 136 i = 17 j = 1 k = 137 i = 16 j = 2 k = 138 i = 15 j = 3 k = 139 i = 14 j = 4 k = 140 i = 13 j = 5 k = 141 i = 12 j = 6 k = 142 i = 11 j = 7 k = 143 i = 10 j = 8 k = 144 i = 9 j = 9 k = 145 i = 8 j = 10 k = 146 i = 7 j = 11 k = 147 i = 6 j = 12 k = 148 i = 5 j = 13 k = 149 i = 4 j = 14 k = 150 i = 3 j = 15 k = 151 i = 2 j = 16 k = 152 i = 1 j = 17 k = 153 i = 18 j = 1 k = 154 i = 17 j = 2 k = 155 i = 16 j = 3 k = 156 i = 15 j = 4 k = 157 i = 14 j = 5 k = 158 i = 13 j = 6 k = 159 i = 12 j = 7 k = 160 i = 11 j = 8 k = 161 i = 10 j = 9 k = 162 i = 9 j = 10 k = 163 i = 8 j = 11 k = 164 i = 7 j = 12 k = 165 i = 6 j = 13 k = 166 i = 5 j = 14 k = 167 i = 4 j = 15 k = 168 i = 3 j = 16 k = 169 i = 2 j = 17 k = 170 i = 1 j = 18 k = 171 i = 19 j = 1 k = 172 i = 18 j = 2 k = 173 i = 17 j = 3 k = 174 i = 16 j = 4 k = 175 i = 15 j = 5 k = 176 i = 14 j = 6 k = 177 i = 13 j = 7 k = 178 i = 12 j = 8 k = 179 i = 11 j = 9 k = 180 i = 10 j = 10 k = 181 i = 9 j = 11 k = 182 i = 8 j = 12 k = 183 i = 7 j = 13 k = 184 i = 6 j = 14 k = 185 i = 5 j = 15 k = 186 i = 4 j = 16 k = 187 i = 3 j = 17 k = 188 i = 2 j = 18 k = 189 i = 1 j = 19 k = 190 i = 20 j = 1 k = 191 i = 19 j = 2 k = 192 i = 18 j = 3 k = 193 i = 17 j = 4 k = 194 i = 16 j = 5 k = 195 i = 15 j = 6 k = 196 i = 14 j = 7 k = 197 i = 13 j = 8 k = 198 i = 12 j = 9 k = 199 i = 11 j = 10 k = 200 i = 10 j = 11 k = 201 i = 9 j = 12 k = 202 i = 8 j = 13 k = 203 i = 7 j = 14 k = 204 i = 6 j = 15 k = 205 i = 5 j = 16 k = 206 i = 4 j = 17 k = 207 i = 3 j = 18 k = 208 i = 2 j = 19 k = 209 i = 1 j = 20 k = 210 i = 21 j = 1 k = 211 i = 20 j = 2 k = 212 i = 19 j = 3 k = 213 i = 18 j = 4 k = 214 i = 17 j = 5 k = 215 i = 16 j = 6 k = 216 i = 15 j = 7 k = 217 i = 14 j = 8 k = 218 i = 13 j = 9 k = 219 i = 12 j = 10 k = 220 i = 11 j = 11 k = 221 i = 10 j = 12 k = 222 i = 9 j = 13 k = 223 i = 8 j = 14 k = 224 i = 7 j = 15 k = 225 i = 6 j = 16 k = 226 i = 5 j = 17 k = 227 i = 4 j = 18 k = 228 i = 3 j = 19 k = 229 i = 2 j = 20 k = 230 i = 1 j = 21 k = 231 i = 22 j = 1 k = 232 i = 21 j = 2 k = 233 i = 20 j = 3 k = 234 i = 19 j = 4 k = 235 i = 18 j = 5 k = 236 i = 17 j = 6 k = 237 i = 16 j = 7 k = 238 i = 15 j = 8 k = 239 i = ...

4   Pass
p=355; q=113; y_correct = 108924; assert(isequal(cantor_rational2index(p,q),y_correct))

i = 2 j = 1 k = 2 i = 1 j = 2 k = 3 i = 3 j = 1 k = 4 i = 2 j = 2 k = 5 i = 1 j = 3 k = 6 i = 4 j = 1 k = 7 i = 3 j = 2 k = 8 i = 2 j = 3 k = 9 i = 1 j = 4 k = 10 i = 5 j = 1 k = 11 i = 4 j = 2 k = 12 i = 3 j = 3 k = 13 i = 2 j = 4 k = 14 i = 1 j = 5 k = 15 i = 6 j = 1 k = 16 i = 5 j = 2 k = 17 i = 4 j = 3 k = 18 i = 3 j = 4 k = 19 i = 2 j = 5 k = 20 i = 1 j = 6 k = 21 i = 7 j = 1 k = 22 i = 6 j = 2 k = 23 i = 5 j = 3 k = 24 i = 4 j = 4 k = 25 i = 3 j = 5 k = 26 i = 2 j = 6 k = 27 i = 1 j = 7 k = 28 i = 8 j = 1 k = 29 i = 7 j = 2 k = 30 i = 6 j = 3 k = 31 i = 5 j = 4 k = 32 i = 4 j = 5 k = 33 i = 3 j = 6 k = 34 i = 2 j = 7 k = 35 i = 1 j = 8 k = 36 i = 9 j = 1 k = 37 i = 8 j = 2 k = 38 i = 7 j = 3 k = 39 i = 6 j = 4 k = 40 i = 5 j = 5 k = 41 i = 4 j = 6 k = 42 i = 3 j = 7 k = 43 i = 2 j = 8 k = 44 i = 1 j = 9 k = 45 i = 10 j = 1 k = 46 i = 9 j = 2 k = 47 i = 8 j = 3 k = 48 i = 7 j = 4 k = 49 i = 6 j = 5 k = 50 i = 5 j = 6 k = 51 i = 4 j = 7 k = 52 i = 3 j = 8 k = 53 i = 2 j = 9 k = 54 i = 1 j = 10 k = 55 i = 11 j = 1 k = 56 i = 10 j = 2 k = 57 i = 9 j = 3 k = 58 i = 8 j = 4 k = 59 i = 7 j = 5 k = 60 i = 6 j = 6 k = 61 i = 5 j = 7 k = 62 i = 4 j = 8 k = 63 i = 3 j = 9 k = 64 i = 2 j = 10 k = 65 i = 1 j = 11 k = 66 i = 12 j = 1 k = 67 i = 11 j = 2 k = 68 i = 10 j = 3 k = 69 i = 9 j = 4 k = 70 i = 8 j = 5 k = 71 i = 7 j = 6 k = 72 i = 6 j = 7 k = 73 i = 5 j = 8 k = 74 i = 4 j = 9 k = 75 i = 3 j = 10 k = 76 i = 2 j = 11 k = 77 i = 1 j = 12 k = 78 i = 13 j = 1 k = 79 i = 12 j = 2 k = 80 i = 11 j = 3 k = 81 i = 10 j = 4 k = 82 i = 9 j = 5 k = 83 i = 8 j = 6 k = 84 i = 7 j = 7 k = 85 i = 6 j = 8 k = 86 i = 5 j = 9 k = 87 i = 4 j = 10 k = 88 i = 3 j = 11 k = 89 i = 2 j = 12 k = 90 i = 1 j = 13 k = 91 i = 14 j = 1 k = 92 i = 13 j = 2 k = 93 i = 12 j = 3 k = 94 i = 11 j = 4 k = 95 i = 10 j = 5 k = 96 i = 9 j = 6 k = 97 i = 8 j = 7 k = 98 i = 7 j = 8 k = 99 i = 6 j = 9 k = 100 i = 5 j = 10 k = 101 i = 4 j = 11 k = 102 i = 3 j = 12 k = 103 i = 2 j = 13 k = 104 i = 1 j = 14 k = 105 i = 15 j = 1 k = 106 i = 14 j = 2 k = 107 i = 13 j = 3 k = 108 i = 12 j = 4 k = 109 i = 11 j = 5 k = 110 i = 10 j = 6 k = 111 i = 9 j = 7 k = 112 i = 8 j = 8 k = 113 i = 7 j = 9 k = 114 i = 6 j = 10 k = 115 i = 5 j = 11 k = 116 i = 4 j = 12 k = 117 i = 3 j = 13 k = 118 i = 2 j = 14 k = 119 i = 1 j = 15 k = 120 i = 16 j = 1 k = 121 i = 15 j = 2 k = 122 i = 14 j = 3 k = 123 i = 13 j = 4 k = 124 i = 12 j = 5 k = 125 i = 11 j = 6 k = 126 i = 10 j = 7 k = 127 i = 9 j = 8 k = 128 i = 8 j = 9 k = 129 i = 7 j = 10 k = 130 i = 6 j = 11 k = 131 i = 5 j = 12 k = 132 i = 4 j = 13 k = 133 i = 3 j = 14 k = 134 i = 2 j = 15 k = 135 i = 1 j = 16 k = 136 i = 17 j = 1 k = 137 i = 16 j = 2 k = 138 i = 15 j = 3 k = 139 i = 14 j = 4 k = 140 i = 13 j = 5 k = 141 i = 12 j = 6 k = 142 i = 11 j = 7 k = 143 i = 10 j = 8 k = 144 i = 9 j = 9 k = 145 i = 8 j = 10 k = 146 i = 7 j = 11 k = 147 i = 6 j = 12 k = 148 i = 5 j = 13 k = 149 i = 4 j = 14 k = 150 i = 3 j = 15 k = 151 i = 2 j = 16 k = 152 i = 1 j = 17 k = 153 i = 18 j = 1 k = 154 i = 17 j = 2 k = 155 i = 16 j = 3 k = 156 i = 15 j = 4 k = 157 i = 14 j = 5 k = 158 i = 13 j = 6 k = 159 i = 12 j = 7 k = 160 i = 11 j = 8 k = 161 i = 10 j = 9 k = 162 i = 9 j = 10 k = 163 i = 8 j = 11 k = 164 i = 7 j = 12 k = 165 i = 6 j = 13 k = 166 i = 5 j = 14 k = 167 i = 4 j = 15 k = 168 i = 3 j = 16 k = 169 i = 2 j = 17 k = 170 i = 1 j = 18 k = 171 i = 19 j = 1 k = 172 i = 18 j = 2 k = 173 i = 17 j = 3 k = 174 i = 16 j = 4 k = 175 i = 15 j = 5 k = 176 i = 14 j = 6 k = 177 i = 13 j = 7 k = 178 i = 12 j = 8 k = 179 i = 11 j = 9 k = 180 i = 10 j = 10 k = 181 i = 9 j = 11 k = 182 i = 8 j = 12 k = 183 i = 7 j = 13 k = 184 i = 6 j = 14 k = 185 i = 5 j = 15 k = 186 i = 4 j = 16 k = 187 i = 3 j = 17 k = 188 i = 2 j = 18 k = 189 i = 1 j = 19 k = 190 i = 20 j = 1 k = 191 i = 19 j = 2 k = 192 i = 18 j = 3 k = 193 i = 17 j = 4 k = 194 i = 16 j = 5 k = 195 i = 15 j = 6 k = 196 i = 14 j = 7 k = 197 i = 13 j = 8 k = 198 i = 12 j = 9 k = 199 i = 11 j = 10 k = 200 i = 10 j = 11 k = 201 i = 9 j = 12 k = 202 i = 8 j = 13 k = 203 i = 7 j = 14 k = 204 i = 6 j = 15 k = 205 i = 5 j = 16 k = 206 i = 4 j = 17 k = 207 i = 3 j = 18 k = 208 i = 2 j = 19 k = 209 i = 1 j = 20 k = 210 i = 21 j = 1 k = 211 i = 20 j = 2 k = 212 i = 19 j = 3 k = 213 i = 18 j = 4 k = 214 i = 17 j = 5 k = 215 i = 16 j = 6 k = 216 i = 15 j = 7 k = 217 i = 14 j = 8 k = 218 i = 13 j = 9 k = 219 i = 12 j = 10 k = 220 i = 11 j = 11 k = 221 i = 10 j = 12 k = 222 i = 9 j = 13 k = 223 i = 8 j = 14 k = 224 i = 7 j = 15 k = 225 i = 6 j = 16 k = 226 i = 5 j = 17 k = 227 i = 4 j = 18 k = 228 i = 3 j = 19 k = 229 i = 2 j = 20 k = 230 i = 1 j = 21 k = 231 i = 22 j = 1 k = 232 i = 21 j = 2 k = 233 i = 20 j = 3 k = 234 i = 19 j = 4 k = 235 i = 18 j = 5 k = 236 i = 17 j = 6 k = 237 i = 16 j = 7 k = 238 i = 15 j = 8 k = 239 i = ...