题目的意思是给你一组数,然后不断的进行除法(注意是大数除以小数),然后将得到的结果加入这组数种然后继续进行除法,
直到没有新添加的数为止
此题按照提议模拟即可
注意要保持元素的不同
int CountNumbers(vector <int> numbers) { set<int> ss(numbers.begin(),numbers.end()); bool flag = true; while(flag){ flag = false; for(int i = 0 ; i < numbers.size(); ++ i ){ for(int j = 0 ; 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(); }
topcoder SRM 610 DIV2 DivideByZero
时间: 2024-09-28 21:33:55