Cody

# Problem 60. The Goldbach Conjecture

Solution 1901272

Submitted on 15 Aug 2019 by Tetsuji Tsuda
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
nList = 28:6:76; for i = 1:length(nList) n = nList(i); [p1,p2] = goldbach(n) assert(isprime(p1) && isprime(p2) && (p1+p2==n)); end

tmp1 = [] tmp2 = [] r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 idx = 2 3 5 7 11 13 17 19 23 pri = 2 3 5 7 11 13 17 19 23 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 tmp1 = 5 tmp2 = 23 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 24 sum = 28 tmp1 = 5 11 tmp2 = 23 17 sum = 30 sum = 34 sum = 30 sum = 32 sum = 36 sum = 36 sum = 40 p1 = 5 p2 = 23 p1 = 5 p2 = 23 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 34 31 32 33 34 idx = 2 3 5 7 11 13 17 19 23 29 31 pri = 2 3 5 7 11 13 17 19 23 29 31 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 tmp1 = 3 tmp2 = 31 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 sum = 34 tmp1 = 3 5 tmp2 = 31 29 sum = 36 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 36 sum = 38 sum = 24 sum = 28 sum = 30 sum = 34 tmp1 = 3 5 11 tmp2 = 31 29 23 sum = 40 sum = 42 sum = 30 sum = 32 sum = 36 sum = 42 sum = 44 sum = 36 sum = 40 sum = 46 sum = 48 sum = 42 sum = 48 sum = 50 sum = 52 sum = 54 p1 = 3 p2 = 31 p1 = 3 p2 = 31 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 40 31 32 33 34 35 36 37 38 39 40 idx = 2 3 5 7 11 13 17 19 23 29 31 37 pri = 2 3 5 7 11 13 17 19 23 29 31 37 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 sum = 40 tmp1 = 3 tmp2 = 37 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 sum = 34 sum = 36 sum = 42 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 36 sum = 38 sum = 44 sum = 24 sum = 28 sum = 30 sum = 34 sum = 40 tmp1 = 3 11 tmp2 = 37 29 sum = 42 sum = 48 sum = 30 sum = 32 sum = 36 sum = 42 sum = 44 sum = 50 sum = 36 sum = 40 tmp1 = 3 11 17 tmp2 = 37 29 23 sum = 46 sum = 48 sum = 54 sum = 42 sum = 48 sum = 50 sum = 56 sum = 52 sum = 54 sum = 60 sum = 60 sum = 66 p1 = 3 p2 = 37 p1 = 3 p2 = 37 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 46 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 idx = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 pri = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 sum = 43 sum = 45 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 sum = 40 sum = 44 sum = 46 tmp1 = 3 tmp2 = 43 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 sum = 34 sum = 36 sum = 42 sum = 46 tmp1 = 3 5 tmp2 = 43 41 sum = 48 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 36 sum = 38 sum = 44 sum = 48 sum = 50 sum = 24 sum = 28 sum = 30 sum = 34 sum = 40 sum = 42 sum = 48 sum = 52 sum = 54 sum = 30 sum = 32 sum = 36 sum = 42 sum = 44 sum = 50 sum = 54 sum = 56 sum = 36 sum = 40 sum = 46 tmp1 = 3 5 17 tmp2 = 43 41 29 sum = 48 sum = 54 sum = 58 sum = 60 sum = 42 sum = 48 sum = 50 sum = 56 sum = 60 sum = 62 sum = 52 sum = 54 sum = 60 sum = 64 sum = 66 sum = 60 sum = 66 sum = 70 sum = 72 sum = 68 sum = 72 sum = 74 sum = 78 sum = 80 p1 = 3 p2 = 43 p1 = 3 p2 = 43 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 52 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 idx = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 pri = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 sum = 43 sum = 45 sum = 49 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 sum = 40 sum = 44 sum = 46 sum = 50 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 sum = 34 sum = 36 sum = 42 sum = 46 sum = 48 sum = 52 tmp1 = 5 tmp2 = 47 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 36 sum = 38 sum = 44 sum = 48 sum = 50 sum = 54 sum = 24 sum = 28 sum = 30 sum = 34 sum = 40 sum = 42 sum = 48 sum = 52 tmp1 = 5 11 tmp2 = 47 41 sum = 54 sum = 58 sum = 30 sum = 32 sum = 36 sum = 42 sum = 44 sum = 50 sum = 54 sum = 56 sum = 60 sum = 36 sum = 40 sum = 46 sum = 48 sum = 54 sum = 58 sum = 60 sum = 64 sum = 42 sum = 48 sum = 50 sum = 56 sum = 60 sum = 62 sum = 66 sum = 52 tmp1 = 5 11 23 tmp2 = 47 41 29 sum = 54 sum = 60 sum = 64 sum = 66 sum = 70 sum = 60 sum = 66 sum = 70 sum = 72 sum = 76 sum = 68 sum = 72 sum = 74 sum = 78 sum = 78 sum = 80 sum = 84 sum = 84 sum = 88 p1 = 5 p2 = 47 p1 = 5 p2 = 47 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 58 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 idx = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 pri = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 sum = 43 sum = 45 sum = 49 sum = 55 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 sum =...

2   Pass
nList = [18 20 22 100 102 114 1000 2000 36 3600]; for i = 1:length(nList) n = nList(i); [p1,p2] = goldbach(n) assert(isprime(p1) && isprime(p2) && (p1+p2==n)); end

tmp1 = [] tmp2 = [] r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 idx = 2 3 5 7 11 13 17 pri = 2 3 5 7 11 13 17 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 12 sum = 16 sum = 18 tmp1 = 5 tmp2 = 13 sum = 22 sum = 18 tmp1 = 5 7 tmp2 = 13 11 sum = 20 sum = 24 sum = 24 sum = 28 p1 = 5 p2 = 13 p1 = 5 p2 = 13 tmp1 = [] tmp2 = [] r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 idx = 2 3 5 7 11 13 17 19 pri = 2 3 5 7 11 13 17 19 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 tmp1 = 3 tmp2 = 17 sum = 22 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 18 sum = 20 tmp1 = 3 7 tmp2 = 17 13 sum = 24 sum = 26 sum = 24 sum = 28 sum = 30 sum = 30 sum = 32 p1 = 3 p2 = 17 p1 = 3 p2 = 17 tmp1 = [] tmp2 = [] r = 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 idx = 2 3 5 7 11 13 17 19 pri = 2 3 5 7 11 13 17 19 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 tmp1 = 3 tmp2 = 19 sum = 12 sum = 16 sum = 18 sum = 22 tmp1 = 3 5 tmp2 = 19 17 sum = 24 sum = 18 sum = 20 sum = 24 sum = 26 sum = 24 sum = 28 sum = 30 sum = 30 sum = 32 p1 = 3 p2 = 19 p1 = 3 p2 = 19 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 60 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 Columns 61 through 90 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 Columns 91 through 100 91 92 93 94 95 96 97 98 99 100 idx = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 pri = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 sum = 43 sum = 45 sum = 49 sum = 55 sum = 61 sum = 63 sum = 69 sum = 73 sum = 75 sum = 81 sum = 85 sum = 91 sum = 99 sum = 8 sum = 10 sum = 14 sum = 16 sum = 20 sum = 22 sum = 26 sum = 32 sum = 34 sum = 40 sum = 44 sum = 46 sum = 50 sum = 56 sum = 62 sum = 64 sum = 70 sum = 74 sum = 76 sum = 82 sum = 86 sum = 92 sum = 100 tmp1 = 3 tmp2 = 97 sum = 12 sum = 16 sum = 18 sum = 22 sum = 24 sum = 28 sum = 34 sum = 36 sum = 42 sum = 46 sum = 48 sum = 52 sum = 58 sum = 64 sum = 66 sum = 72 sum = 76 sum = 78 sum = 84 sum = 88 sum = 94 sum = 102 sum = 18 sum = 20 sum = 24 sum = 26 sum = 30 sum = 36 sum = 38 sum = 44 sum = 48 sum = 50 sum = 54 sum = 60 sum = 66 sum = 68 sum = 74 sum = 78 sum = 80 sum = 86 sum = 90 sum = 96 sum = 104 sum = 24 sum = 28 sum = 30 sum = 34 sum = 40 sum = 42 sum = 48 sum = 52 sum = 54 sum = 58 sum = 64 sum = 70 sum = 72 sum = 78 sum = 82 sum = 84 sum = 90 sum = 94 sum = 100 tmp1 = 3 11 tmp2 = 97 89 sum = 108 sum = 30 sum = 32 sum = 36 sum = 42 sum = 44 sum = 50 sum = 54 sum = 56 sum = 60 sum = 66 sum = 72 sum = 74 sum = 80 sum = 84 sum = 86 sum = 92 sum = 96 sum = 102 sum = 110 sum = 36 sum = 40 sum = 46 sum = 48 sum = 54 sum = 58 sum = 60 sum = 64 sum = 70 sum = 76 sum = 78 sum = 84 sum = 88 sum = 90 sum = 96 sum = 100 tmp1 = 3 11 17 tmp2 = 97 89 83 sum = 106 sum = 114 sum = 42 sum = 48 sum = 50 sum = 56 sum = 60 sum = 62 sum = 66 sum = 72 sum = 78 sum = 80 sum = 86 sum = 90 sum = 92 sum = 98 sum = 102 sum = 108 sum = 116 sum = 52 sum = 54 sum = 60 sum = 64 sum = 66 sum = 70 sum = 76 sum = 82 sum = 84 sum = 90 sum = 94 sum = 96 sum = 102 sum = 106 sum = 112 sum = 120 sum = 60 sum = 66 sum = 70 sum = 72 sum = 76 sum = 82 sum = 88 sum = 90 sum = 96 sum = 100 tmp1 = 3 11 17 29 tmp2 = 97 89 83 71 sum = 102 sum = 108 sum = 112 sum = 118 sum = 126 sum = 68 sum = 72 sum = 74 sum = 78 sum = 84 sum = 90 sum = 92 sum = 98 sum = 102 sum = 104 sum = 110 sum = 114 sum = 120 sum = 128 sum = 78 sum = 80 sum = 84 sum = 90 sum = 96 sum = 98 sum = 104 sum = 108 sum = 110 sum = 116 sum = 120 sum = 126 sum = 134 sum = 84 sum = 88 sum = 94 sum = 100 tmp1 = 3 11 17 29 41 tmp2 = 97 89 83 71 59 sum = 102 sum = 108 sum = 112 sum = 114 sum = 120 sum = 124 sum = 130 sum = 138 sum = 90 sum = 96 sum = 102 sum = 104 sum = 110 sum = 114 sum = 116 sum = 122 sum = 126 sum = 132 sum = 140 sum = 100 tmp1 = 3 11 17 29 41 47 tmp2 = 97 89 83 71 59 53 sum = 106 sum = 108 sum = 114 sum = 118 sum = 120 sum = 126 sum = 130 sum = 136 sum = 144 sum = 112 sum = 114 sum = 120 sum = 124 sum = 126 sum = 132 sum = 136 sum = 142 sum = 150 sum = 120 sum = 126 sum = 130 sum = 132 sum = 138 sum = 142 sum = 148 sum = 156 sum = 128 sum = 132 sum = 134 sum = 140 sum = 144 sum = 150 sum = 158 sum = 138 sum = 140 sum = 146 sum = 150 sum = 156 sum = 164 sum = 144 sum = 150 sum = 154 sum = 160 sum = 168 sum = 152 sum = 156 sum = 162 sum = 170 sum = 162 sum = 168 sum = 176 sum = 172 sum = 180 p1 = 3 p2 = 97 p1 = 3 p2 = 97 tmp1 = [] tmp2 = [] r = Columns 1 through 30 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 Columns 31 through 60 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 Columns 61 through 90 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 Columns 91 through 102 91 92 93 94 95 96 97 98 99 100 101 102 idx = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 pri = 2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 sum = 5 sum = 7 sum = 9 sum = 13 sum = 15 sum = 19 sum = 21 sum = 25 sum = 31 sum = 33 sum = 39 ...