题解 | #查找兄弟单词#

查找兄弟单词

http://www.nowcoder.com/practice/03ba8aeeef73400ca7a37a5f3370fe68

这道题很多坑,详细看我的xd函数

#include <bits/stdc++.h>
using namespace std;
vector<string> xd (vector<string>& str, string s) {
	vector<string> result;
	int n = s.size();
	for (int i = 0; i < str.size(); i++) {
		int tem = str[i].size();
		if (tem != n || str[i] == s) continue;
		else {
			int flag = 0;
			vector<int> num1(26,0);
			for (int j = 0; j < n; j++) {
				num1[str[i][j] - 'a'] ++;
			}
			for (int j = 0; j < n; j++) {
				num1[s[j] - 'a'] -= 1;
				if (num1[s[j] - 'a'] < 0) {
				flag = 1;
				break;
				}
			}
			if (!flag) {
				result.push_back(str[i]);
				//cout << str[i] << endl;
			}
		}
	}
	return result;
}
int main () {
	int n;
	cin >> n;
	vector<string> str(n);
	vector<string> result;
	for (int i = 0; i < n; i++) {
		cin >> str[i];
	}
	string s;
	int k;
	cin >> s >> k;
	result = xd(str, s);
	cout << result.size() <<endl;
	sort (result.begin(), result.end());
	if (k <= result.size()) {
		cout << result[k - 1] << endl;
	}
	return 0;
}
全部评论

相关推荐

徐新高:号已经废了 建议重开一个账号投简历
点赞 评论 收藏
分享
mq2:我倒是觉得这种敞亮一点好。能接受就去不能就不去呗。 完了跟现在“正常”公司一样,hr说的天花乱坠,进去一看根本就是996核动力牛马,想走又没应届生身份了。岂不是更糟。
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客企业服务