提出 #68124330


ソースコード 拡げる

#include <bits/stdc++.h>
using namespace std;

// Debugging
void __print(int x) {cerr << x;}
void __print(long x) {cerr << x;}
void __print(long long x) {cerr << x;}
void __print(unsigned x) {cerr << x;}
void __print(unsigned long x) {cerr << x;}
void __print(unsigned long long x) {cerr << x;}
void __print(float x) {cerr << x;}
void __print(double x) {cerr << x;}
void __print(long double x) {cerr << x;}
void __print(char x) {cerr << '\'' << x << '\'';}
void __print(const char *x) {cerr << '\"' << x << '\"';}
void __print(const string &x) {cerr << '\"' << x << '\"';}
void __print(bool x) {cerr << (x ? "true" : "false");}

template<typename T, typename V>
void __print(const pair<T, V> &x) {cerr << '{'; __print(x.first); cerr << ','; __print(x.second); cerr << '}';}
template<typename T>
void __print(const T &x) {int f = 0; cerr << '{'; for (auto &i: x) cerr << (f++ ? "," : ""), __print(i); cerr << "}";}
void _print() {cerr << "]\n";}
template <typename T, typename... V>
void _print(T t, V... v) {__print(t); if (sizeof...(v)) cerr << ", "; _print(v...);}
#ifndef ONLINE_JUDGE
#define debug(x...) cerr << "[" << #x << "] = ["; _print(x)
#else
#define debug(x...)
#endif

#define int long long
#define pi pair<int, int>  
#define vi vector<int>  
#define vpi vector<pi>  
#define mii map<int, int>  
#define pq_max priority_queue<int>  // Max-heap
#define pq_min priority_queue<int, vector<int>, greater<int>>  // Min-heap
#define printvec(vec) for (const auto& x : vec) { cout << x << ' '; } cout << "\n"
#define printYesNo(argument) cout << ((argument) ? "Yes\n" : "No\n")
#define take_vec(v, size) vector<int> v(size); fl(i, size) cin >> v[i]
#define all(arr) arr.begin(), arr.end()  
#define rall(arr) arr.rbegin(), arr.rend()   
#define INF (int)1e18  
#define MOD 1000000007   
#define endl '\n'  
#define sz(x) (int)(x).size()  
#define fl(i, n) for (int i = 0; i < n; ++i)  // Loop from 0 to n-1
#define rfl(i, n) for (int i = n - 1; i >= 0; --i)  // Reverse loop from n-1 to 0
#define fr(i, a, b) for (int i = a; i <= b; ++i)  // Loop from a to b inclusive
#define rf(i, a, b) for (int i = a; i >= b; --i)  // Reverse loop from a to b
#define pb push_back  
#define ff first  
#define ss second  
#define uniq(v) v.erase(unique(all(v)), v.end())  // Remove duplicates from a sorted vector
#define gcd(a, b) __gcd(a, b) 
#define lcm(a, b) (a / gcd(a, b) * b)  
#define bitcount(x) __builtin_popcountll(x) 
#define is_power_of_2(x) (!(x & (x - 1)) && x)  // Check if a number is a power of 2
#define fill(dp) memset(dp , -1 , sizeof(dp))

//ai + i = j - aj

void solve() {
    int n;
    cin>>n;
    take_vec(v , n);
    map<int,int> mpp1 , mpp2;
    int ans = 0;
    for(int i=0;i<n;i++){
        mpp1[v[i] + i]++;
        mpp2[i - v[i]]++;
    }

    for(auto it:mpp1){
        ans += it.ss * mpp2[it.ff];
    }

    cout<<ans<<endl;
}   


int32_t main() {
    ios_base::sync_with_stdio(false);
    cin.tie(0);
    solve();
   
    return 0;
}

提出情報

提出日時
問題 C - Distance Indicators
ユーザ Maddy_22
言語 C++ 20 (gcc 12.2)
得点 300
コード長 3055 Byte
結果 AC
実行時間 193 ms
メモリ 35828 KiB

ジャッジ結果

セット名 Sample All
得点 / 配点 0 / 0 300 / 300
結果
AC × 3
AC × 29
セット名 テストケース
Sample 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt
All 00_sample_00.txt, 00_sample_01.txt, 00_sample_02.txt, 01_random_03.txt, 01_random_04.txt, 01_random_05.txt, 01_random_06.txt, 01_random_07.txt, 01_random_08.txt, 01_random_09.txt, 01_random_10.txt, 01_random_11.txt, 01_random_12.txt, 01_random_13.txt, 01_random_14.txt, 01_random_15.txt, 01_random_16.txt, 01_random_17.txt, 01_random_18.txt, 01_random_19.txt, 01_random_20.txt, 01_random_21.txt, 01_random_22.txt, 01_random_23.txt, 01_random_24.txt, 01_random_25.txt, 01_random_26.txt, 01_random_27.txt, 01_random_28.txt
ケース名 結果 実行時間 メモリ
00_sample_00.txt AC 1 ms 3488 KiB
00_sample_01.txt AC 1 ms 3608 KiB
00_sample_02.txt AC 1 ms 3468 KiB
01_random_03.txt AC 107 ms 21224 KiB
01_random_04.txt AC 129 ms 24536 KiB
01_random_05.txt AC 65 ms 16712 KiB
01_random_06.txt AC 123 ms 25760 KiB
01_random_07.txt AC 172 ms 30972 KiB
01_random_08.txt AC 177 ms 30972 KiB
01_random_09.txt AC 171 ms 31040 KiB
01_random_10.txt AC 193 ms 30892 KiB
01_random_11.txt AC 83 ms 24376 KiB
01_random_12.txt AC 9 ms 6036 KiB
01_random_13.txt AC 48 ms 17140 KiB
01_random_14.txt AC 12 ms 7120 KiB
01_random_15.txt AC 75 ms 23380 KiB
01_random_16.txt AC 78 ms 17340 KiB
01_random_17.txt AC 43 ms 11788 KiB
01_random_18.txt AC 4 ms 4416 KiB
01_random_19.txt AC 58 ms 14344 KiB
01_random_20.txt AC 91 ms 19884 KiB
01_random_21.txt AC 90 ms 20768 KiB
01_random_22.txt AC 99 ms 20480 KiB
01_random_23.txt AC 77 ms 21216 KiB
01_random_24.txt AC 109 ms 35828 KiB
01_random_25.txt AC 72 ms 23596 KiB
01_random_26.txt AC 74 ms 23504 KiB
01_random_27.txt AC 75 ms 23632 KiB
01_random_28.txt AC 74 ms 23604 KiB