hermit
#include<iostream>
#include<cmath>
using namespace std;
bool cmp(int a,int b){
return a>b;
}
int main(){
freopen("sweeper.in","r",stdin);
freopen("sweeper.out","w",stdout);
int n;
cin>>n;
int a[200005],t[200005];
for(int i=1;i<=n;i++){
cin>>a[i];
}
int max=-1,bj,pdfs=0,ans=0,cnt=1;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[j]>max){
max=a[j];
bj=j;
}
}
max=-1;
if(pdfs==0){
t[bj]=cnt;
ans+=(a[bj]*abs(cnt));
pdfs=1;
}
else{
t[bj]=cnt-cnt*2;
ans+=(a[bj]*abs(cnt-cnt*2));
pdfs=0;
cnt++;
}
a[bj]=-2;
}
cout<<ans*2<<endl;
for(int i=1;i<=n;i++){
cout<<t[i]<<" ";
}
fclose(stdin);
fclose(stdout);
return 0;
}
sweeper
#include<iostream>
#include<cmath>
using namespace std;
bool cmp(int a,int b){
return a>b;
}
int main(){
freopen("sweeper.in","r",stdin);
freopen("sweeper.out","w",stdout);
int n;
cin>>n;
int a[200005],t[200005];
for(int i=1;i<=n;i++){
cin>>a[i];
}
int max=-1,bj,pdfs=0,ans=0,cnt=1;
for(int i=1;i<=n;i++){
for(int j=1;j<=n;j++){
if(a[j]>max){
max=a[j];
bj=j;
}
}
max=-1;
if(pdfs==0){
t[bj]=cnt;
ans+=(a[bj]*abs(cnt));
pdfs=1;
}
else{
t[bj]=cnt-cnt*2;
ans+=(a[bj]*abs(cnt-cnt*2));
pdfs=0;
cnt++;
}
a[bj]=-2;
}
cout<<ans*2<<endl;
for(int i=1;i<=n;i++){
cout<<t[i]<<" ";
}
fclose(stdin);
fclose(stdout);
return 0;
}
necklace
#include<iostream>
#include<algorithm>
#include<cmath>
using namespace std;
bool cmp(int a,int b){
return a>b;
}
int main(){
freopen("necklace.in","r",stdin);
freopen("necklace.out","w",stdout);
int n,m,d;
cin>>n>>m>>d;
int a[100005];
for(int i=1;i<=n;i++){
cin>>a[i];
}
sort(a+1,a+n+1,cmp);
cout<<a[1]*m-((floor(m/d))*(a[1]-a[2]));
fclose(stdin);
fclose(stdout);
return 0;
}