欢乐赛56 | T6
2025-09-25 21:20:05
发布于:江苏
10阅读
0回复
0点赞
依旧结构体,不难但烦
#include<bits/stdc++.h>
using namespace std;
long long n;
string s,t;
struct sj
{
int id;
double s;
}a[55];
bool cmp(sj a,sj b)
{
if(a.s==b.s)
{
return a.id<b.id;
}
else
{
return a.s>b.s;
}
}
int main()
{
cin>>n>>s;
for(int i=0;i<n;i++)
{
cin>>t;
double ss=0;
int kk=0;
for(int j=0;j<15;j++)
{
if(t[kk]==s[kk])
{
ss+=2;
}
kk++;
}
for(int j=0;j<4;j++)
{
for(int l=0;l<4;l++)
{
if(t[kk]==s[kk])
{
ss+=1.5;
}
kk++;
}
for(int l=0;l<2;l++)
{
if(t[kk]==s[kk])
{
ss+=2;
}
kk++;
}
}
for(int j=0;j<2;j++)
{
for(int l=0;l<5;l++)
{
if(t[kk]==s[kk])
{
ss+=2;
}
kk++;
}
}
a[i]={i+1,ss};
}
sort(a,a+n,cmp);
for(int i=0;i<n;i++)
{
cout<<a[i].id<<" ";
if(a[i].s==int(a[i].s))
{
cout<<int(a[i].s);
}
else
{
printf("%.1f",a[i].s);
}
cout<<endl;
}
return 0;
}
这里空空如也







有帮助,赞一个