topcoder SRM 610 DIV2 DivideByZero

时间:2023-12-24 14:11:49

题目的意思是给你一组数,然后不断的进行除法(注意是大数除以小数),然后将得到的结果加入这组数种然后继续进行除法,

直到没有新添加的数为止

此题按照提议模拟即可

注意要保持元素的不同

    int CountNumbers(vector <int> numbers) {
set<int> ss(numbers.begin(),numbers.end());
bool flag = true;
while(flag){
flag = false;
for(int i = ; i < numbers.size(); ++ i ){
for(int j = ; j < numbers.size(); ++ j ){
if(numbers[i] > numbers[j] && ss.find(numbers[i]/numbers[j])==ss.end()) {
ss.insert(numbers[i]/numbers[j]);
numbers.push_back(numbers[i]/numbers[j]);
flag = true;
}
}
}
}
return ss.size();
}