字节后端5月6日笔试,第二题,0%,为什么?
#include <vector>
#include <unordered_set>
using namespace std;
bool isValid(string &a, string &b) {
if (a.size() > b.size()) swap(a, b);
for (int i = 0; i < a.size(); i++) {
if (a[i] != b[i]) return false;
}
return true;
}
int main() {
int n;
while (cin >> n) {
vector<string> nums(n);
for (int i = 0; i < n; i++) {
int temp;
cin >> temp;
nums[i] = to_string(temp);
}
unordered_set<string> set(nums.begin(), nums.end());
bool flag = false;
if (set.size() != nums.size()) {
cout << "YES" << endl;
flag = true;
}
if (!flag) {
for (int i = 0; i < nums.size(); i++) {
if (flag) break;
for (int j = i + 1; j < nums.size(); j++) {
if (isValid(nums[i], nums[j])) {
cout << "YES" << endl;
flag = true;
break;
}
}
}
if (!flag) cout << "NO" << endl;
}
}
return 0;
} 题目给的案例还有测试案例都通过了,提交是0%,是因为暴力超时吗?#笔试题目##笔经##面经##实习##春招#
查看16道真题和解析