# |
Submission time |
Handle |
Problem |
Language |
Result |
Execution time |
Memory |
1106941 |
2024-10-31T09:30:45 Z |
vjudge1 |
Sirni (COCI17_sirni) |
C++17 |
|
3080 ms |
461204 KB |
#include<bits/stdc++.h>
using namespace std;
#define mod 1000000007
#define nmax 10000007
#define fi first
#define se second
#define ll int
ll t=1,n,m=0,i=0,j=0,d=0,x=0,k=0,y=0,z,a[nmax],f[nmax],h[nmax],cnt=0,pa[nmax],sz[nmax];
long long kq=0;
struct hm
{
ll a,b,c;
}v[nmax*4];
bool cmp(hm a,hm b)
{
return a.c<b.c;
}
ll findset(ll u)
{
if(pa[u]==u)return u;
return pa[u]=findset(pa[u]);
}
int main()
{
ios_base::sync_with_stdio(0);cin.tie(0);cout.tie(0);
cin>>n;
for(i=1;i<=n;++i)
{
cin>>a[i];
x=max(x,a[i]);
if(f[a[i]])
{
i--;
n--;
continue;
}
sz[i]=1;
pa[i]=i;
f[a[i]]=a[i];
}
sort(a+1,a+n+1);
for(i=x;i>=1;--i)if(!f[i])f[i]=f[i+1];
d=0;
f[0]=f[1]-1;
for(i=1;i<=x;++i)
{
if(f[i]!=f[i-1])d++;
h[i]=d;
}
for(i=1;i<=n;++i)
{
for(j=a[i];j<=x;j+=a[i])
{
y=j;
if(j==a[i])y++;
if(y>x)break;
if(f[y]<j+a[i])
{
v[++cnt].a=i;
v[cnt].b=h[y];
v[cnt].c=f[y]-j;
}
}
}
sort(v+1,v+cnt+1,cmp);
kq=0;
for(i=1;i<=cnt;++i)
{
x=findset(v[i].a);
y=findset(v[i].b);
if(x!=y)
{
if(sz[x]<sz[y])swap(x,y);
sz[x]+=sz[y];
pa[y]=x;
kq+=v[i].c;
}
}
cout<<kq;
}
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
56 ms |
86600 KB |
Output is correct |
2 |
Correct |
76 ms |
90872 KB |
Output is correct |
3 |
Correct |
48 ms |
86600 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
2 ms |
8784 KB |
Output is correct |
2 |
Correct |
171 ms |
88720 KB |
Output is correct |
3 |
Correct |
47 ms |
86600 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
49 ms |
86600 KB |
Output is correct |
2 |
Correct |
46 ms |
86404 KB |
Output is correct |
3 |
Correct |
47 ms |
86600 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
86 ms |
31056 KB |
Output is correct |
2 |
Correct |
289 ms |
65864 KB |
Output is correct |
3 |
Correct |
108 ms |
37200 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
22 ms |
18924 KB |
Output is correct |
2 |
Correct |
188 ms |
43532 KB |
Output is correct |
3 |
Correct |
75 ms |
27216 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
160 ms |
47440 KB |
Output is correct |
2 |
Correct |
350 ms |
78376 KB |
Output is correct |
3 |
Correct |
99 ms |
35324 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
29 ms |
15696 KB |
Output is correct |
2 |
Correct |
332 ms |
74540 KB |
Output is correct |
3 |
Correct |
101 ms |
35144 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
179 ms |
103040 KB |
Output is correct |
2 |
Correct |
2089 ms |
356556 KB |
Output is correct |
3 |
Correct |
212 ms |
107080 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
168 ms |
103108 KB |
Output is correct |
2 |
Correct |
3014 ms |
461204 KB |
Output is correct |
3 |
Correct |
228 ms |
113400 KB |
Output is correct |
# |
Verdict |
Execution time |
Memory |
Grader output |
1 |
Correct |
66 ms |
88688 KB |
Output is correct |
2 |
Correct |
3080 ms |
459412 KB |
Output is correct |
3 |
Correct |
110 ms |
37200 KB |
Output is correct |