#4793
bitsir
Considerăm numerele naturale N
, X
, Y
, M[1], M[2], ..., M[N]
. Șirul de numere naturale A[1], A[2], ..., A[N]
este numit bun dacă următoarele condiții sunt satisfăcute simultan:
A[1] OR A[2] OR ... OR A[N] = X
, unde OR
reprezintă operația sau pe biți.A[1] XOR A[2] XOR ... XOR A[N] = Y
, unde XOR
reprezintă operația sau exclusiv pe biți.A[i] AND M[i] = M[i]
, pentru 1 ≤ i ≤ N
, unde AND
reprezintă operația și pe biți.Se dau N
, X
, Y
și M[1], M[2], ..., M[N]
, cu semnificația din enunț. Să se determine dacă există șiruri bune, respectiv să se determine numărul de șiruri bune, modulo 1.000.000.007
.
Problema | bitsir | Operații I/O |
![]() bitsir.in /bitsir.out
|
---|---|---|---|
Limita timp | 0.1 secunde | Limita memorie |
Total: 256 MB
/
Stivă 64 MB
|
Id soluție | #57607298 | Utilizator | |
Fișier | bitsir.cpp | Dimensiune | 3.14 KB |
Data încărcării | 07 Aprilie 2025, 14:38 | Scor / rezultat | Eroare de compilare |
bitsir.cpp:43:20: warning: missing terminating ' character [enabled by default] const int MAX = 100'000, MOD = 1e9 + 7; ^ bitsir.cpp:43:1: error: missing terminating ' character const int MAX = 100'000, MOD = 1e9 + 7; ^ bitsir.cpp:2:12: error: expected ',' or ';' before 'long' #define ll long long ^ bitsir.cpp:3:13: note: in expansion of macro 'll' #define int ll ^ bitsir.cpp:45:1: note: in expansion of macro 'int' int N, X, Y; ^ bitsir.cpp: In function 'long long int fact(long long int)': bitsir.cpp:74:40: error: 'MOD' was not declared in this scope return memo[n] = fact(n - 1) * n % MOD; ^ bitsir.cpp: In function 'long long int expr(long long int, long long int)': bitsir.cpp:83:25: error: 'MOD' was not declared in this scope p = p * a % MOD, b--; ^ bitsir.cpp:84:21: error: 'MOD' was not declared in this scope a = a * a % MOD; ^ bitsir.cpp: In function 'long long int C(long long int, long long int)': bitsir.cpp:94:36: error: 'MOD' was not declared in this scope return fact(n) * expr(fact(k), MOD - 2) % MOD * expr(fact(n - k), MOD - 2) % MOD; ^ bitsir.cpp: In function 'void read()': bitsir.cpp:99:12: error: 'N' was not declared in this scope cin >> N >> X >> Y; ^ bitsir.cpp:99:17: error: 'X' was not declared in this scope cin >> N >> X >> Y; ^ bitsir.cpp:99:22: error: 'Y' was not declared in this scope cin >> N >> X >> Y; ^ bitsir.cpp:121:47: error: 'MOD' was not declared in this scope ans *= (expr(2,r-1) - 1 + MOD)%MOD, ans %= MOD; ^ bitsir.cpp:125:48: error: 'MOD' was not declared in this scope ans *= expr(2,r-1), ans %= MOD; ^ bitsir.cpp:133:48: error: 'MOD' was not declared in this scope ans *= expr(2,r-1), ans %= MOD; ^ bitsir.cpp: In function 'long long int fact(long long int)': bitsir.cpp:75:1: warning: control reaches end of non-void function [-Wreturn-type] } ^ bitsir.cpp: In function 'long long int C(long long int, long long int)': bitsir.cpp:95:1: warning: control reaches end of non-void function [-Wreturn-type] } ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema bitsir face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.