Pagini recente » Cod sursa (job #2562479) | Cod sursa (job #724005) | Cod sursa (job #1324924) | Cod sursa (job #2028061) | Cod sursa (job #2149289)
#include <fstream>
using namespace std;
unsigned long long where[100003];
unsigned long long first[100003];
unsigned long long last[100003];
int main(int argc, char** argv) {
unsigned long long M, N, K;
unsigned long long qi, qj;
unsigned long long i, u;
ifstream f("distincte.in");
f >> N >> K >> M;
for (i = 1; i <= N; i++) {
f >> u;
last[i] = u;
if (where[u] == 0) {
first[i] = u;
}
else {
last[where[u]] = 0;
}
where[u] = i;
}
for (i = 1; i <= N; i++) {
first[i] = first[i] + first[i - 1];
last[i] = last[i] + last[i - 1];
}
ofstream g("distincte.out");
for (i = 0; i < M; i++) {
f >> qi >> qj;
u = qi <= qj ? first[qj] - last[qi-1] : first[qi] - last[qj-1];
g << u % 666013 << "\n";
}
f.close();
g.close();
return 0;
}