如图:
![](https://cdn.luogu.com.cn/upload/pic/23117.png)
by JAMERES86 @ 2018-07-12 18:05:07
数据1出错了吧 @[主席](/space/show?uid=48442)
by twelveZ @ 2018-07-12 18:09:18
发代码行吗
by twelveZ @ 2018-07-12 18:19:47
```cpp
#include<iostream>
#include<cstring>
#include<cstdio>
using namespace std;
int s[26];
char a[30000],b[30000],c[30000],d[30000];//定义4个字符串(只要开到101就行了)
int main()
{
int n,i;
gets(a);gets(b);gets(c);gets(d); //输入
for(i=0;i<strlen(a);i++)
{
if (a[i]>=65&&a[i]<=90) s[a[i]-65]++;
else continue;
}for(i=0;i<strlen(b);i++)
{
if (b[i]>=65&&b[i]<=90) s[b[i]-65]++;
else continue;
}for(i=0;i<strlen(c);i++)
{
if (c[i]>=65&&c[i]<=90) s[c[i]-65]++;
else continue;
}for(i=0;i<strlen(d);i++)
{
if (d[i]>=65&&d[i]<=90) s[d[i]-65]++;
else continue;
}
//加,懒得用其他方法,懒得开一个二维数组
int max=0;
for(i=0;i<=25;i++)
if (s[i]>max) max=s[i];//最高值
for(i=max;i>=1;i--)//从最高值向下筛
{
for(int ii=0;ii<=25;ii++)
{if (s[ii]>=max) {cout<<"*"<<" ";/*如果够到标准输出星号*/if (max==1&&ii==25) cout<<endl;/*!!!您可能是因为这部错的,如果您下载了第一个测试点并打开C++测试就会发现——不会转行!!!*/s[ii]--;/*本行作用到之后自减*/}
else {if (ii==25) {cout<<endl;/*最后,转行*/if (max!=1) max--;}else cout<<" ";/*如果没有作用到,输出两个空格*/}
}
}
for(i=0;i<=25;i++)
{
char z=i+65;/*懒得前面定义一个*/
cout<<z<<" ";
}
}
```
希望能帮助到您
by twelveZ @ 2018-07-12 18:21:22
@[JAMERES86](/space/show?uid=95875) @[漆原琉华](/space/show?uid=10541)
...搞错代码了,发的是我原来本地保存的...不是我交上去的那个...
```cpp
#include <cstdio>
#include <cstring>
#include <iostream>
using namespace std;
int Len, num[30], maxn = -1, del[30];
char s[100], c;
bool find()
{
for(int i = 0; i <= 'Z' - 'A'; i++)
if(del[i] >= 0)
return true;
return false;
}
int main(void)
{
memset(num, 0, sizeof(num));
while(scanf("%c", &c) != EOF)
{
if(c >= 'A' && c <= 'Z')
num[c - 'A']++;
}
// for(int i = 0; i <= 'Z' - 'A'; i++)
// cout << num[i] << " ";
for(int i = 0; i <= 'Z' - 'A'; i++)
if(num[i] > maxn)
maxn = num[i];
// cout << maxn << endl;
for(int i = 0; i <= 'Z' - 'A'; i++)
del[i] = maxn - num[i];
// for(int i = 0; i <= 'Z' - 'A'; i++)
// cout << del[i] << " ";
while(find())
for(int i = 0; i <= 'Z' - 'A'; i++)
{
if(i == 'Z' - 'A')
{
if(del[i] <= 0)
printf("*\n");
else
printf(" \n");
del[i]--;
continue;
}
if(del[i] <= 0)
printf("* ");
else
printf(" ");
del[i]--;
}
for(int i = 0; i <= 'Z' - 'A'; i++)
{
if(i != 'Z' - 'A')
printf("%c ", 'A' + i);
else
printf("%c", 'Z');
}
return 0;
}
```
by user48442 @ 2018-07-12 22:29:08
啊小失误小失误代码放错了求原谅QwQ
by user48442 @ 2018-07-12 22:40:37
我明天再看一眼 ~~其实是自己WA了~~
by JAMERES86 @ 2018-07-12 22:48:26
@[JAMERES86](/space/show?uid=95875) QwQ有毒啊
by user48442 @ 2018-07-13 21:17:10
@[AC机的朋友AC鸭](/space/show?uid=107232) 懵,还是不太懂 请问该如何修改?
by user48442 @ 2018-07-13 21:25:10
@[主席](/space/show?uid=48442) 我是个新手QAQ,才学一阵,您用的那些命令我看不懂,实在是抱歉(惭愧.jpg)
by twelveZ @ 2018-07-13 21:50:30