题解:AT_guildfes_2026_final_d EGFイニシャル

· · 题解

题意解释

n 个字符串按长度排序,依次输出每个字符串的第一个字母。(记得转成大写。)

思路分析

太水了,不会有人不会 sort 吧。
直接排一下,写个 cmp 函数按长度排,然后直接输出,把 x 转大写直接 x-'a'+'A' 就行了……

代码实现

#include<bits/stdc++.h>
using namespace std;

const int N=15;
int n;
string str[N];
int main()
{
    cin>>n;
    for(int i=1;i<=n;i++) cin>>str[i];
    sort(str+1,str+n+1,[](string x,string y){return x.size()>y.size();});
    for(int i=1;i<=n;i++) cout<<char(str[i][0]-'a'+'A');
    return 0;
}

结束!