Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #pragma GCC optimize("Ofast,unroll-loops")
- #define _CRT_SECURE_NO_WARNINGS
- #include <iostream>
- #include <algorithm>
- #include <vector>
- #include <cmath>
- #include <iomanip>
- #include <string>
- #include <set>
- using namespace std;
- const int N = 5e5 + 7,MOD = 1e4;
- int a[N], n, q, l, r;
- long long ans = 0;
- int main() {
- /*freopen("z-function.in", "r", stdin);
- freopen("z-function.out", "w", stdout);*/
- ios::sync_with_stdio(false);
- cin.tie(0);
- cin >> n >> q;
- for (int i = 0; i < n; i++) {
- cin >> a[i];
- }
- for (int I = 0; I < q; I++) {
- cin >> l >> r;
- l--;
- r--;
- ans = 0;
- for (int ln = 1; ln <= (r - l + 1); ln++) {
- ans += ln * (r - l + 2 - ln);
- }
- for (int i = l; i <= r; i++) {
- for (int j = i; j <= r; j++) {
- if (a[i] == a[j]) {
- ans -= (r - j + 1);
- //t_ans += (r - j + 1);
- //cout << j << "->";
- }
- }
- //cout << t_ans << " ";
- }
- cout << ans << "\n";
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement