Submission #1154616

#TimeUsernameProblemLanguageResultExecution timeMemory
1154616simuyuBroken Device (JOI17_broken_device)C++20
0 / 100
18 ms1344 KiB
#include <bits/stdc++.h> #include "Annalib.h" //#include <Brunolib.h> using namespace std; #define f first #define s second #define ll long long void Anna( int N, long long X, int K, int P[] ) { int sshuffle[150]; sshuffle[0] = 125; sshuffle[1] = 110; sshuffle[2] = 107; sshuffle[3] = 124; sshuffle[4] = 29; sshuffle[5] = 66; sshuffle[6] = 74; sshuffle[7] = 79; sshuffle[8] = 20; sshuffle[9] = 149; sshuffle[10] = 39; sshuffle[11] = 109; sshuffle[12] = 140; sshuffle[13] = 119; sshuffle[14] = 136; sshuffle[15] = 134; sshuffle[16] = 121; sshuffle[17] = 1; sshuffle[18] = 76; sshuffle[19] = 106; sshuffle[20] = 98; sshuffle[21] = 113; sshuffle[22] = 118; sshuffle[23] = 53; sshuffle[24] = 94; sshuffle[25] = 3; sshuffle[26] = 137; sshuffle[27] = 105; sshuffle[28] = 11; sshuffle[29] = 14; sshuffle[30] = 47; sshuffle[31] = 59; sshuffle[32] = 132; sshuffle[33] = 12; sshuffle[34] = 92; sshuffle[35] = 104; sshuffle[36] = 100; sshuffle[37] = 146; sshuffle[38] = 35; sshuffle[39] = 148; sshuffle[40] = 9; sshuffle[41] = 87; sshuffle[42] = 135; sshuffle[43] = 69; sshuffle[44] = 144; sshuffle[45] = 120; sshuffle[46] = 116; sshuffle[47] = 24; sshuffle[48] = 141; sshuffle[49] = 88; sshuffle[50] = 27; sshuffle[51] = 30; sshuffle[52] = 33; sshuffle[53] = 68; sshuffle[54] = 58; sshuffle[55] = 85; sshuffle[56] = 49; sshuffle[57] = 40; sshuffle[58] = 36; sshuffle[59] = 38; sshuffle[60] = 8; sshuffle[61] = 83; sshuffle[62] = 103; sshuffle[63] = 25; sshuffle[64] = 142; sshuffle[65] = 7; sshuffle[66] = 65; sshuffle[67] = 77; sshuffle[68] = 80; sshuffle[69] = 102; sshuffle[70] = 123; sshuffle[71] = 2; sshuffle[72] = 10; sshuffle[73] = 139; sshuffle[74] = 84; sshuffle[75] = 21; sshuffle[76] = 0; sshuffle[77] = 43; sshuffle[78] = 143; sshuffle[79] = 127; sshuffle[80] = 112; sshuffle[81] = 71; sshuffle[82] = 63; sshuffle[83] = 17; sshuffle[84] = 13; sshuffle[85] = 82; sshuffle[86] = 48; sshuffle[87] = 95; sshuffle[88] = 52; sshuffle[89] = 44; sshuffle[90] = 114; sshuffle[91] = 64; sshuffle[92] = 28; sshuffle[93] = 101; sshuffle[94] = 57; sshuffle[95] = 51; sshuffle[96] = 115; sshuffle[97] = 45; sshuffle[98] = 16; sshuffle[99] = 31; sshuffle[100] = 93; sshuffle[101] = 99; sshuffle[102] = 23; sshuffle[103] = 46; sshuffle[104] = 138; sshuffle[105] = 50; sshuffle[106] = 96; sshuffle[107] = 89; sshuffle[108] = 56; sshuffle[109] = 32; sshuffle[110] = 22; sshuffle[111] = 128; sshuffle[112] = 60; sshuffle[113] = 131; sshuffle[114] = 86; sshuffle[115] = 72; sshuffle[116] = 97; sshuffle[117] = 5; sshuffle[118] = 133; sshuffle[119] = 67; sshuffle[120] = 34; sshuffle[121] = 147; sshuffle[122] = 108; sshuffle[123] = 37; sshuffle[124] = 91; sshuffle[125] = 6; sshuffle[126] = 4; sshuffle[127] = 117; sshuffle[128] = 19; sshuffle[129] = 42; sshuffle[130] = 41; sshuffle[131] = 90; sshuffle[132] = 126; sshuffle[133] = 15; sshuffle[134] = 70; sshuffle[135] = 62; sshuffle[136] = 111; sshuffle[137] = 61; sshuffle[138] = 75; sshuffle[139] = 73; sshuffle[140] = 130; sshuffle[141] = 129; sshuffle[142] = 78; sshuffle[143] = 122; sshuffle[144] = 18; sshuffle[145] = 81; sshuffle[146] = 26; sshuffle[147] = 145; sshuffle[148] = 55; sshuffle[149] = 54; // hamming code yay HAHA bool b1, b2, b3, b4, b5, b6, b7; int nextbit = 0; for (int i=0; i<60; i+=4) { // i to i+4 are the data bits b1 = (bool) ( X & (1<<i) ); b2 = (bool) ( X & (1<<(i+1)) ); b3 = (bool) ( X & (1<<(i+2)) ); b4 = (bool) ( X & (1<<(i+3)) ); // b1^b2^b3^b5 = 0 // b5 = b1^b2^b3 b5 = b1^b2^b3; b6 = b2^b3^b4; b7 = b2^b3^b4; // set those seven bits!! Set(sshuffle[nextbit++], (int)b1); Set(sshuffle[nextbit++], (int)b2); Set(sshuffle[nextbit++], (int)b3); Set(sshuffle[nextbit++], (int)b4); Set(sshuffle[nextbit++], (int)b5); Set(sshuffle[nextbit++], (int)b6); Set(sshuffle[nextbit++], (int)b7); } // then the rest is just nothing while (nextbit < 150) { Set(sshuffle[nextbit++], 0); } }
#include <bits/stdc++.h> //#include <Annalib.h> #include "Brunolib.h" using namespace std; #define f first #define s second #define ll long long long long Bruno( int N, int A[] ) { int sshuffle[150]; sshuffle[0] = 125; sshuffle[1] = 110; sshuffle[2] = 107; sshuffle[3] = 124; sshuffle[4] = 29; sshuffle[5] = 66; sshuffle[6] = 74; sshuffle[7] = 79; sshuffle[8] = 20; sshuffle[9] = 149; sshuffle[10] = 39; sshuffle[11] = 109; sshuffle[12] = 140; sshuffle[13] = 119; sshuffle[14] = 136; sshuffle[15] = 134; sshuffle[16] = 121; sshuffle[17] = 1; sshuffle[18] = 76; sshuffle[19] = 106; sshuffle[20] = 98; sshuffle[21] = 113; sshuffle[22] = 118; sshuffle[23] = 53; sshuffle[24] = 94; sshuffle[25] = 3; sshuffle[26] = 137; sshuffle[27] = 105; sshuffle[28] = 11; sshuffle[29] = 14; sshuffle[30] = 47; sshuffle[31] = 59; sshuffle[32] = 132; sshuffle[33] = 12; sshuffle[34] = 92; sshuffle[35] = 104; sshuffle[36] = 100; sshuffle[37] = 146; sshuffle[38] = 35; sshuffle[39] = 148; sshuffle[40] = 9; sshuffle[41] = 87; sshuffle[42] = 135; sshuffle[43] = 69; sshuffle[44] = 144; sshuffle[45] = 120; sshuffle[46] = 116; sshuffle[47] = 24; sshuffle[48] = 141; sshuffle[49] = 88; sshuffle[50] = 27; sshuffle[51] = 30; sshuffle[52] = 33; sshuffle[53] = 68; sshuffle[54] = 58; sshuffle[55] = 85; sshuffle[56] = 49; sshuffle[57] = 40; sshuffle[58] = 36; sshuffle[59] = 38; sshuffle[60] = 8; sshuffle[61] = 83; sshuffle[62] = 103; sshuffle[63] = 25; sshuffle[64] = 142; sshuffle[65] = 7; sshuffle[66] = 65; sshuffle[67] = 77; sshuffle[68] = 80; sshuffle[69] = 102; sshuffle[70] = 123; sshuffle[71] = 2; sshuffle[72] = 10; sshuffle[73] = 139; sshuffle[74] = 84; sshuffle[75] = 21; sshuffle[76] = 0; sshuffle[77] = 43; sshuffle[78] = 143; sshuffle[79] = 127; sshuffle[80] = 112; sshuffle[81] = 71; sshuffle[82] = 63; sshuffle[83] = 17; sshuffle[84] = 13; sshuffle[85] = 82; sshuffle[86] = 48; sshuffle[87] = 95; sshuffle[88] = 52; sshuffle[89] = 44; sshuffle[90] = 114; sshuffle[91] = 64; sshuffle[92] = 28; sshuffle[93] = 101; sshuffle[94] = 57; sshuffle[95] = 51; sshuffle[96] = 115; sshuffle[97] = 45; sshuffle[98] = 16; sshuffle[99] = 31; sshuffle[100] = 93; sshuffle[101] = 99; sshuffle[102] = 23; sshuffle[103] = 46; sshuffle[104] = 138; sshuffle[105] = 50; sshuffle[106] = 96; sshuffle[107] = 89; sshuffle[108] = 56; sshuffle[109] = 32; sshuffle[110] = 22; sshuffle[111] = 128; sshuffle[112] = 60; sshuffle[113] = 131; sshuffle[114] = 86; sshuffle[115] = 72; sshuffle[116] = 97; sshuffle[117] = 5; sshuffle[118] = 133; sshuffle[119] = 67; sshuffle[120] = 34; sshuffle[121] = 147; sshuffle[122] = 108; sshuffle[123] = 37; sshuffle[124] = 91; sshuffle[125] = 6; sshuffle[126] = 4; sshuffle[127] = 117; sshuffle[128] = 19; sshuffle[129] = 42; sshuffle[130] = 41; sshuffle[131] = 90; sshuffle[132] = 126; sshuffle[133] = 15; sshuffle[134] = 70; sshuffle[135] = 62; sshuffle[136] = 111; sshuffle[137] = 61; sshuffle[138] = 75; sshuffle[139] = 73; sshuffle[140] = 130; sshuffle[141] = 129; sshuffle[142] = 78; sshuffle[143] = 122; sshuffle[144] = 18; sshuffle[145] = 81; sshuffle[146] = 26; sshuffle[147] = 145; sshuffle[148] = 55; sshuffle[149] = 54; int nextbit = 0; bool b1, b2, b3, b4, b5, b6, b7; bool c5, c6, c7; ll X = 0; ll nextXbit = 0; for (int i=0; i<15; i++) { // decode the hamming code each time b1 = (A[sshuffle[nextbit++]]==1); b2 = (A[sshuffle[nextbit++]]==1); b3 = (A[sshuffle[nextbit++]]==1); b4 = (A[sshuffle[nextbit++]]==1); b5 = (A[sshuffle[nextbit++]]==1); b6 = (A[sshuffle[nextbit++]]==1); b7 = (A[sshuffle[nextbit++]]==1); // start decoding c5 = b1^b2^b3^b5; c6 = b1^b3^b4^b6; c7 = b2^b3^b4^b7; if (c5 && c6 && c7) { b3 = !b3; } else if (c5 && c6 && (!c7)) { b1 = !b1; } else if (c5 && c7 && (!c6)) { b2 = !b2; } else if (c6 && c7 && (!c5)) { b4 = !b4; } // now that error correction was done, decode the bits. X |= b1*(1<<(nextXbit++)); X |= b2*(1<<(nextXbit++)); X |= b3*(1<<(nextXbit++)); X |= b4*(1<<(nextXbit++)); } return X; }
#Verdict Execution timeMemoryGrader output
Fetching results...