萌新咨询,全部RE,VS可过
查看原帖
萌新咨询,全部RE,VS可过
837714
Sakurajima__Mai楼主2023/3/19 17:35
//输入部分:四行大写
//计数 得最大数
//输出 打空格 打星 打字母
//为防止多空格,最后一次循环单独拎出
//
#include<iostream>
#include<string>
using namespace std;
int counter[27] = {};

void input() {
	string a;
	for (int i = 1;i <= 3;i++) {
		getline(cin, a);
		cin.ignore();
		for (int j = 0;j < a.length();j++) {
			if(a[j]!=' ')
				counter[a[j] - 64]++;
		}
	}
	getline(cin, a);
	for (int j = 0;j < a.length();j++) {
		if (a[j] != ' ')
			counter[a[j] - 64]++;
	}
}

int Max() {
	int M=0;
	for (int i = 1;i < 27;i++) {
		if (M < counter[i])
			M = counter[i];
	}
	return M;
}

void output() {
	int M = Max();
	while(M>0) {
		for (int i = 1;i < 26;i++) {
			if (counter[i] == M) {
				cout << '*' << ' ';
				counter[i]--;
		}
			
		else
			cout << ' '<<' ';
		
	}
		if (counter[26] == M) {
			cout << '*';
			counter[26]--;
	}
	else
		cout << ' ';
	cout << endl;
	M--;
}
	
	for (int i = 65;i <= 89;i++) {
		cout << char(i)<<' ';
	}
	cout << 'Z';
}
int main() {
	input();
	output();
	return 0;
}

请各位能看看出问题的大佬指点一下,我对RE比较不了解,没找到是哪里的问题,谢谢~

2023/3/19 17:35
加载中...