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 31 | #include<iostream> using namespace std; template<int VALUE, int INDEX, int SIZE, bool ALLOW> struct Assign { static void Element (int *p) { Assign<VALUE + 1, INDEX + 1, SIZE, (INDEX < SIZE)>::Element(p); p[INDEX] = VALUE; } }; template<int VALUE, int INDEX, int SIZE> struct Assign<VALUE, INDEX, SIZE, false> { static void Element (int *p) { p[INDEX] = VALUE; } }; template<int START, int SIZE> void Initialize (int (&a)[SIZE]) { Assign<START, 0, SIZE, true>::Element(a); } int main () { int a[100]; Initialize<1>(a); for(int i = 0; i < 100; i++) cout<<"a["<<i<<"] = "<<a[i]<<endl; } |
I2luY2x1ZGU8aW9zdHJlYW0+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7Cgp0ZW1wbGF0ZTxpbnQgVkFMVUUsIGludCBJTkRFWCwgaW50IFNJWkUsIGJvb2wgQUxMT1c+CnN0cnVjdCBBc3NpZ24KewogIHN0YXRpYyB2b2lkIEVsZW1lbnQgKGludCAqcCkgCiAgewogICAgQXNzaWduPFZBTFVFICsgMSwgSU5ERVggKyAxLCBTSVpFLCAoSU5ERVggPCBTSVpFKT46OkVsZW1lbnQocCk7CiAgICBwW0lOREVYXSA9IFZBTFVFOwogIH0KfTsKdGVtcGxhdGU8aW50IFZBTFVFLCBpbnQgSU5ERVgsIGludCBTSVpFPgpzdHJ1Y3QgQXNzaWduPFZBTFVFLCBJTkRFWCwgU0laRSwgZmFsc2U+CnsKICBzdGF0aWMgdm9pZCBFbGVtZW50IChpbnQgKnApIHsgcFtJTkRFWF0gPSBWQUxVRTsgfQp9OwoKdGVtcGxhdGU8aW50IFNUQVJULCBpbnQgU0laRT4Kdm9pZCBJbml0aWFsaXplIChpbnQgKCZhKVtTSVpFXSkKewogIEFzc2lnbjxTVEFSVCwgMCwgU0laRSwgdHJ1ZT46OkVsZW1lbnQoYSk7Cn0KCmludCBtYWluICgpCnsKICBpbnQgYVsxMDBdOwogIEluaXRpYWxpemU8MT4oYSk7CiAgZm9yKGludCBpID0gMDsgaSA8IDEwMDsgaSsrKQogICAgY291dDw8ImFbIjw8aTw8Il0gPSAiPDxhW2ldPDxlbmRsOwp9
-
upload with new input
-
result: Success time: 0s memory: 2724 kB returned value: 0
a[0] = 1 a[1] = 2 a[2] = 3 a[3] = 4 a[4] = 5 a[5] = 6 a[6] = 7 a[7] = 8 a[8] = 9 a[9] = 10 a[10] = 11 a[11] = 12 a[12] = 13 a[13] = 14 a[14] = 15 a[15] = 16 a[16] = 17 a[17] = 18 a[18] = 19 a[19] = 20 a[20] = 21 a[21] = 22 a[22] = 23 a[23] = 24 a[24] = 25 a[25] = 26 a[26] = 27 a[27] = 28 a[28] = 29 a[29] = 30 a[30] = 31 a[31] = 32 a[32] = 33 a[33] = 34 a[34] = 35 a[35] = 36 a[36] = 37 a[37] = 38 a[38] = 39 a[39] = 40 a[40] = 41 a[41] = 42 a[42] = 43 a[43] = 44 a[44] = 45 a[45] = 46 a[46] = 47 a[47] = 48 a[48] = 49 a[49] = 50 a[50] = 51 a[51] = 52 a[52] = 53 a[53] = 54 a[54] = 55 a[55] = 56 a[56] = 57 a[57] = 58 a[58] = 59 a[59] = 60 a[60] = 61 a[61] = 62 a[62] = 63 a[63] = 64 a[64] = 65 a[65] = 66 a[66] = 67 a[67] = 68 a[68] = 69 a[69] = 70 a[70] = 71 a[71] = 72 a[72] = 73 a[73] = 74 a[74] = 75 a[75] = 76 a[76] = 77 a[77] = 78 a[78] = 79 a[79] = 80 a[80] = 81 a[81] = 82 a[82] = 83 a[83] = 84 a[84] = 85 a[85] = 86 a[86] = 87 a[87] = 88 a[88] = 89 a[89] = 90 a[90] = 91 a[91] = 92 a[92] = 93 a[93] = 94 a[94] = 95 a[95] = 96 a[96] = 97 a[97] = 98 a[98] = 99 a[99] = 100


