2021秋招阿里笔试题
程序员文章站
2024-03-15 17:42:00
...
题目的意思:
给定一个数组中的几个数,一开始是不重复的,然后对每个位置的数据进行调整,问经过 几次调整后可以找到两个重复的数。
#include <iostream>
#include <unordered_map>
#include <vector>
using namespace std;
int twoUnique(vector<int> res){
unordered_map<int,int> mp;
for(auto x : res) mp[x]++;
for(auto x:res){
if(mp[x]==2){
return true;
}
}
return false;
}
int main()
{
// vector<int> res;
// int n;
// cin >>n;
// int x;
// while(cin>>x){
// res.push_back(x);
// }
vector<int> res={8,4,2};
int day=0;
while(!twoUnique(res)){
day++;
for(int j=0;j<day;j++){
for(int i=0;i<res.size();i++){
res[i]=res[i]+i;
}
}
}
cout<<day;
}
上一篇: JAVA 类与对象 例题4
下一篇: 初夏小谈:LC.225:用队列实现栈