求dalao帮助
查看原帖
求dalao帮助
676945
yuan2022楼主2023/11/16 17:56

代码长这样:

#include<bits/stdc++.h>
using namespace std;
int P = 131;
int n, a[10005];
int p[1510], h[1510];
string s;

int main()
{
	cin >> n;
	p[0] = 1;
	h[0] = 0;
	for(int i = 1; i <= n; i++)
	{
		memset(h, 0, sizeof(h));
		cin >> s;
		int len = s.size();
		for(int cur = 0; cur < len; cur++)
		{
			p[cur + 1] = p[cur]*P;
			h[cur + 1] = h[cur]*P + s[i];
		}
		a[i] = h[len];
	}
	int ans = 0;
	for(int i = 1; i <= n; i++)
	{
		bool f = true;
		for(int j = 1; j < i; j++)
		{
			if(a[i] == a[j])
				f = false;
		}
		if(f)
			ans++;
	}
	cout << ans << endl;
	return 0;
}

得9pts。。。

2023/11/16 17:56
加载中...