#2556
Fie N un număr natural și expresia \( H_N = 1 + \frac{1}{2} + \frac{1}{3} + … + \frac{1}{N}\). Determinați numerele naturale P și Q ce reprezintă numărătorul respectiv numitorul fracției ireductibile \( H_N = \frac{P}{Q}\).
Balcaniada de Informatică 2018, ziua 1
| Problema | hn | Operații I/O |
hn.in/hn.out
|
|---|---|---|---|
| Limita timp | 0.2 secunde | Limita memorie |
Total: 128 MB
/
Stivă 32 MB
|
| Id soluție | #58736887 | Utilizator | |
| Fișier | hn.cpp | Dimensiune | 4.64 KB |
| Data încărcării | 28 Iulie 2025, 19:10 | Scor/rezultat | Eroare de compilare |
hn.cpp: In function 'BigInt operator+(const BigInt&, const BigInt&)': hn.cpp:58:5: error: '__int128_t' was not declared in this scope __int128_t carry = 0; ^ hn.cpp:58:16: error: expected ';' before 'carry' __int128_t carry = 0; ^ hn.cpp:62:33: error: 'carry' was not declared in this scope for (size_t i = 0; i < n || carry; ++i) { ^ hn.cpp:63:20: error: expected ';' before 'current' __int128_t current = carry; ^ hn.cpp:64:34: error: 'current' was not declared in this scope if (i < a.digits.size()) current += a.digits[i]; ^ hn.cpp:65:34: error: 'current' was not declared in this scope if (i < b.digits.size()) current += b.digits[i]; ^ hn.cpp:66:33: error: 'current' was not declared in this scope result.digits.push_back(current % BASE); ^ hn.cpp: In function 'BigInt operator*(const BigInt&, int)': hn.cpp:78:5: error: '__int128_t' was not declared in this scope __int128_t carry = 0; ^ hn.cpp:78:16: error: expected ';' before 'carry' __int128_t carry = 0; ^ hn.cpp:79:47: error: 'carry' was not declared in this scope for (size_t i = 0; i < a.digits.size() || carry; ++i) { ^ hn.cpp:80:20: error: expected ';' before 'current' __int128_t current = carry; ^ hn.cpp:82:13: error: 'current' was not declared in this scope current += (__int128_t)a.digits[i] * b; ^ hn.cpp:82:36: error: expected ';' before 'a' current += (__int128_t)a.digits[i] * b; ^ hn.cpp:84:33: error: 'current' was not declared in this scope result.digits.push_back(current % BASE); ^ hn.cpp: In function 'BigInt operator/(const BigInt&, int)': hn.cpp:99:5: error: '__int128_t' was not declared in this scope __int128_t remainder = 0; ^ hn.cpp:99:16: error: expected ';' before 'remainder' __int128_t remainder = 0; ^ hn.cpp:101:20: error: expected ';' before 'current' __int128_t current = a.digits[i] + remainder * BASE; ^ hn.cpp:102:28: error: 'current' was not declared in this scope result.digits[i] = current / b; ^ hn.cpp: In function 'int operator%(const BigInt&, int)': hn.cpp:110:5: error: '__int128_t' was not declared in this scope __int128_t remainder = 0; ^ hn.cpp:110:16: error: expected ';' before 'remainder' __int128_t remainder = 0; ^ hn.cpp:112:20: error: expected ';' before 'current' __int128_t current = a.digits[i] + remainder * BASE; ^ hn.cpp:113:21: error: 'current' was not declared in this scope remainder = current % b; ^ hn.cpp: In function 'int main()': hn.cpp:142:33: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("hn.in", "r", stdin); ^ hn.cpp:143:35: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("hn.out", "w", stdout); ^ hn.cpp:146:20: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", &N); ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema hn 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ă.