Submission #598272

#TimeUTC-0UsernameProblemLanguageResultExecution timeMemory
5982722022-07-17 22:02:08_Avocado_Fancy Fence (CEOI20_fancyfence)C++14
100 / 100
49 ms6656 KiB
#include <bits/stdc++.h>
#define int int64_t
using namespace std;
int mod = 1e9+7;
int ans = 0;
int sum(int n){
n %= mod;
return (((n*(n+1)))/2)%mod;
}
int find(int a, auto&par){
if(a == par[a]) return a;
return par[a] = find(par[a], par);
}
void unite(int a, int b, int h, auto&par, auto&w){
a = find(a, par);
b = find(b, par);
int minus = (((sum(w[a]) * sum(h))%mod) + (sum(w[b]) * sum(h)))%mod;
//cout<<"minus "<<minus<<endl;
ans = (ans + ((sum(w[a] + w[b]) * sum(h))%mod - minus + mod)%mod)%mod;
par[b] = a;
w[a] = (w[a] + w[b])%mod;
}
signed main(){
 
הההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההההה
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX

Compilation message (stderr)

fancyfence.cpp:13:17: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   13 | int find(int a, auto&par){
      |                 ^~~~
fancyfence.cpp:18:33: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   18 | void unite(int a, int b, int h, auto&par, auto&w){
      |                                 ^~~~
fancyfence.cpp:18:43: warning: use of 'auto' in parameter declaration only available with '-fconcepts-ts'
   18 | void unite(int a, int b, int h, auto&par, auto&w){
      |                                           ^~~~
#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...