class Solution {
public:
int findFinalValue(vector<int>& nums, int ori) {
int n=nums.size();
unordered_map<int, int>mp;
for(auto x: nums)mp[x]++;
for(int i=0; i<n; i++){
if(mp.find(ori)!=mp.end()){
ori=2*ori;
}
else return ori;
}
return ori;
}
};