Cerința
Fiind dat N
, un număr natural nenul, calculați suma \( S=1^{2}+2^{2}+3^{2}+\cdots+N^{2} \), modulo 10.234.573
.
Date de intrare
Programul citește de la tastatură numărul N
.
Date de ieșire
Programul va afișa pe ecran numărul S
, modulo 10.234.573
.
Restricții și precizări
1 ≤ N ≤ 2.000.000.000
Exemplu
Intrare
4
Ieșire
30
Explicație
\( S=1^{2}+2^{2}+3^{2}+4^{2}=30 \)
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema SumaPătrate:
#include <iostream>
using namespace std;
long long n , m , r , a , b , c , rez ;
int main()
{
cin >> n ;
m = 10234573 ;
r = n % 6 ;
switch ( r )
{
case 0 : a = ( n / 6 ) % m ;
b = ( n + 1 ) % m ;
c = ( 2 * n + 1 ) % m ;
break ;
case 1 : a = n % m ;
b = ( ( n + 1 ) / 2 ) % m ;
c = ( ( 2 * n + 1 ) / 3 ) % m ;
break ;
case 2 : a = ( n / 2 ) % m ;
b = ( ( n + 1 ) / 3 ) % m ;
c = ( 2 * n + 1 ) % m ;
break ;
case 3 : a = ( n / 3 ) % m ;
b = ( ( n + 1 ) / 2 ) % m ;
c = ( 2 * n + 1 ) % m ;
break ;
case 4 : a = ( n / 2 ) % m ;
b = ( n + 1 ) % m ;
c = ( ( 2 * n + 1 ) / 3 ) % m ;
break ;
case 5 : a = n % m ;
b = ( ( n + 1 ) / 6 ) % m ;
c = ( 2 * n + 1 ) % m ;
break ;
}
rez = ( a * b ) % m ;
rez = ( rez * c ) % m ;
cout << rez ;
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #1212 SumaPătrate
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1212 SumaPătrate de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!