Informatică, întrebare adresată de nataliaachashiro, 9 ani în urmă

Fiind dat N, un număr natural nenul, calculați suma S=12+22+32+⋯+N2S=12+22+32+⋯+N2, 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²+3²+4²=30

Răspunsuri la întrebare

Răspuns de davidalexandru9
17
#include<iostream>
#include<algorithm>
  using namespace std;
  int y, z, i, j, n, x, m, k, u[5], aux, ok, w[1005];
 int v[1005];
 long long p, s, a, b, c;
  int main(void)
{
     cin>>n;
    n=n%10234573;
     a=n;
b=n+1;
c=2*n+1;
     if(a%2==0) a/=2;
     if(a%3==0) a/=3;
     if(b%2==0) b/=2;
    if(b%3==0) b/=3;
     if(c%3==0) c/=3;
     x=(((a*b)%10234573)*c)%10234573;
     cout<<x;
    return 0;
 }

nataliaachashiro: multumec muuuult de tot,cu varianta mea luam numai 50 de p.
flavius1610: #include <iostream>
02.
 
03.
using namespace std;
04.
long long n , m , r , a , b , c , rez ;
05.
 
06.
int main()
07.
{
08.
cin >> n ;
09.
m = 10234573 ;
10.
r = n % 6 ;
11.
switch ( r )
12.
{
13.
case 0 : a = ( n / 6 ) % m ;
14.
b = ( n + 1 ) % m ;
15.
c = ( 2 * n + 1 ) % m ;
16.
break ;
17.
case 1 : a =  n % m ;
18.
b = ( ( n + 1 ) / 2 ) % m ;
19.
c = ( ( 2 * n + 1 ) / 3 ) % m ;
20.
break ;
21.
case 2 : a = ( n / 2 ) % m ;
22.
b = ( ( n + 1 ) / 3 ) % m ;
23.
c = ( 2 * n + 1 ) % m ;
24.
break
Alte întrebări interesante