本文主要是介绍Codeforces 922 C - Robot Vacuum Cleaner (贪心、数据结构、sort中的cmp,建模+分析思维),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
#include<cmath>
#include<algorithm>
#include<cstring>
#include<string>
#include<iostream>
#include<map>
#include<vector>
#include<set>
#include<map>
#include<queue>
#include<string.h>
using namespace std;
typedef long long ll;
const int inf=0x3f3f3f3f;
const int maxn=100006;
struct node{
string s;
ll a,b;
ll num;
double val;
}s[maxn];
return a.val >b.val ;
}
ll n;
cin>>n;
for(ll i=0;i<n;i++){
s[i].a=s[i].b=0;
cin>>s[i].s ;
s[i].num=0;
ll cnt=0;
ll size=s[i].s.size ();
for(int k=0;k<size;k++){
if(s[i].s[k]=='s'){
s[i].a++;
cnt++;
}
else{
s[i].b++;
s[i].num+=cnt;
}
}
if(s[i].b==0)s[i].val =inf;
else s[i].val=s[i].a*1.0/s[i].b;
}
sort(s,s+n,cmp);
string ss="";
ll ans=0;
ll pre=0;
for(int i=0;i<n;i++){
ss+=s[i].s;
ans+=s[i].num +s[i].b*pre;
pre+=s[i].a ;
}
printf("%lld\n",ans);
}
这篇关于Codeforces 922 C - Robot Vacuum Cleaner (贪心、数据结构、sort中的cmp,建模+分析思维)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!