NOIP T1 求 hack
  • 板块学术版
  • 楼主icypenguin/ll
  • 当前回复14
  • 已保存回复14
  • 发布时间2023/11/19 10:05
  • 上次更新2023/11/19 11:41:13
查看原帖
NOIP T1 求 hack
751881
icypenguin/ll楼主2023/11/19 10:05
#include <bits/stdc++.h>
using namespace std;
long long n, m, bk[1005];
char a[3005][3005];
string b[3005], zheng[3005], fan[3005];
int main(){
	//freopen("dict.in", "r", stdin);
	//freopen("dict.out", "w", stdout);
	cin >> n >> m;
	for (long long i = 1; i <= n; i++){
		for (long long j = 1; j <= m; j++){
			cin >> a[i][j];
		}
	}
	for (long long i = 1; i <= n; i++){
		for (long long j = 0; j <= 25; j++){
			bk[j] = 0;
		}
		for (long long j = 1; j <= m; j++){
			bk[a[i][j] - 'a']++;
		}
		fan[i] = "";
		for (long long j = 25; j >= 0; j--){
			for (long long k = 1; k <= bk[j]; k++){
				fan[i] += (char)(j + 'a');
			}
		}
	}
	for (long long i = 1; i <= n; i++){
		for (long long j = 0; j <= 25; j++){
			bk[j] = 0;
		}
		for (long long j = 1; j <= m; j++){
			bk[a[i][j] - 'a']++;
		}
		zheng[i] = "";
		for (long long j = 0; j <= 25; j++){
			for (long long k = 1; k <= bk[j]; k++){
				zheng[i] += (char)(j + 'a');
			}
		}
	}
	for (long long num = 1; num <= n; num++){
		if (n == 1){
			cout << "1";
		}else{
			bool flg = true;
			for (long long i = 1; i <= n; i++){
				if (i == num){
					continue;
				}
				if (zheng[num] >= fan[i]){
					flg = false;
  					break;
				}
			}
			if (flg){
				cout << "1";
			}else{
				cout << "0";
			}
		}
	}
	cout << endl;
	return 0;
}

感觉复杂度错误,但是能过洛谷、云斗、小图灵、核桃、信友队的自测,求 hack。

2023/11/19 10:05
加载中...