#define NDEBUG // NDEBUG definita nella versione che consegno #include #ifndef NDEBUG # include // uso di cin e cout non consentito in versione finale #endif #include #include using namespace std; const int MAX_N = 1000000; int n; int st[2][MAX_N]; int main() { int i; int j; int opt=0; int zeri =0; ifstream fin("input.txt"); assert( fin ); ofstream fout("output.txt"); assert( fout ); fin >> n; int stomp[2][3]; for(i=0; i < 2; i++){ for(j=0; j < 3; j++){ fin >> stomp[i][j]; if(stomp[i][j]==0){ zeri++; } } } for(i=0; i < 2; i++){ for(j=0; j < n; j++){ fin >> st[i][j]; } } fin.close(); if(zeri==6){ for(i=0; i < 2; i++){ for(j=0; j < n; j++){ opt += st[i][j]; } } fout << opt << endl; fout.close(); } else{ for(int feeded_in = 3; feeded_in < n; feeded_in++) { for(i=0; i < 3; i++){ st[0][feeded_in-3+i] ^= stomp[0][i];//cambio prima riga st[1][feeded_in-3+i] ^= stomp[1][i];//cambio seconda riga }//for i }//for feeded for(i=0; i < 2; i++){ for(j=0; j < n; j++){ opt += st[i][j]; } } fout << opt/2 << endl; fout.close(); } return 0; }