Submission #1265469

#TimeUsernameProblemLanguageResultExecution timeMemory
1265469thenpcTriple Peaks (IOI25_triples)C++20
15.95 / 100
25 ms3400 KiB
#include <bits/stdc++.h> #include "triples.h" using namespace std; #define ll long long ll n,a[200005]; ll count_triples(vector<int> v){ ll n=v.size(); for(int i=1;i<=n;i++){ a[i]=v[i-1]; } ll ans=0; for(int i=1;i<=n;i++){ ll x=i-a[i]; if(x<=0){ continue; } vector<int> u; if(2*a[x]!=a[i]){ u.push_back(x+a[x]); u.push_back(i-a[x]); } else{ u.push_back(x+a[x]); } for(int j=0;j<u.size();j++){ ll b[4]={i-u[j],i-x,u[j]-x}; ll c[4]={a[i],a[u[j]],a[x]}; sort(b,b+3); sort(c,c+3); int sol=1; for(int l=0;l<3;l++){ if(b[l]!=c[l]){ sol=0; } } ans+=sol; } } return ans; } vector<int> construct_range(int m,int k){ vector<int> h; while(m>=3){ h.push_back(1); h.push_back(1); h.push_back(2); m-=3; } return h; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...