Mai intai trebuie sa te autentifici.
Cod sursa(job #1268465)
Utilizator | Data | 20 noiembrie 2014 23:14:00 | |
---|---|---|---|
Problema | Statistici de ordine | Scor | 0 |
Compilator | cpp | Status | done |
Runda | Arhiva educationala | Marime | 0.75 kb |
/// Craciun Catalin
/// Beri
/// C[i] = ( C[i-1] * X + Y ) % Z + K
#include <iostream>
#include <fstream>
#include <algorithm>
#define NMax 1000005
using namespace std;
ifstream f("beri.in");
ofstream g("beri.out");
long long n,k;
long long q,x,y,z;
long long C[NMax];
void read() {
f>>n>>k;
f>>q>>x>>y>>z;
}
void solve() {
C[1] = q; int sumTot = q;
for (long long i=2;i<=n;i++) {
C[i] = ( C[i-1] * x + y ) % z + k; sumTot += C[i]; }
nth_element(C+1, C+k+1, C+1+n);
long long suma = 0;
for (long long i=1;i<=n-k;i++) {
suma += C[i];
}
g<<sumTot - suma - k + 1<<'\n';
}
int main() {
read();
solve();
f.close(); g.close();
return 0;
}