首先只有六个单词,其次不能用sort,不是数字小的排在前面就小,比如9和16肯定是169小
by ztxtjz @ 2019-11-02 12:04:15
@[ztxtjz](/space/show?uid=225965) 那样例不应该是254吗?
by Eat_A_HuTao @ 2019-11-03 11:29:35
```cpp
#include <bits/stdc++.h>
using namespace std;
int a[7],s=1,ans;
int k(string n)
{
if(n=="a" || n=="one" || n=="first")
{
s++;
return 1;
}
if(n=="both" || n=="second" || n=="two")
{
s++;
return 4;
}
if(n=="another" || n=="third" || n=="three")
{
s++;
return 9;
}
if(n=="four")
{
s++;
return 16;
}
if(n=="five")
{
s++;
return 25;
}
if(n=="six")
{
s++;
return 36;
}
if(n=="seven")
{
s++;
return 49;
}
if(n=="eight")
{
s++;
return 64;
}
if(n=="nine")
{
s++;
return 81;
}
if(n=="ten")
{
s++;
return 0;
}
if(n=="eleven")
{
s++;
return 21;
}
if(n=="twelve")
{
s++;
return 44;
}
if(n=="thirteen")
{
s++;
return 69;
}
if(n=="fourteen")
{
s++;
return 96;
}
if(n=="fifteen")
{
s++;
return 25;
}
if(n=="sixteen")
{
s++;
return 56;
}
if(n=="seventeen")
{
s++;
return 89;
}
if(n=="eighteen")
{
s++;
return 24;
}
if(n=="nineteen")
{
s++;
return 61;
}
if(n=="twenty")
{
s++;
return 0;
}
}
int main()
{
string c;
for (int i=0;i<6;i++)
{
cin>>c;
a[s]=k(c);
}
cin>>c;
sort(a+1,a+s+1);
for(int i=2;i<=s;i++)
{
ans+=a[i];
ans*=100;
}
cout<<ans/100;
}
```
我改了一下,还有一个点不对
by Eat_A_HuTao @ 2019-11-03 14:56:36
@[神剑](/user/47328) 样例的3个数是00,04,25,把4接到25后面的话应该是2504
by 刘安哲 @ 2019-12-04 18:47:06
@[刘安哲](/user/186848) 好谢谢,题目已过
by Eat_A_HuTao @ 2019-12-10 16:16:20