第一题
直接遍历统计有多少个非零的不同的数
class Solution {
public:
int v[101];
int minimumOperations(vector<int>& nums) {
memset(v, 0, sizeof(v));
for (auto &num : nums) v[num] = 1;
int res = 0;
for (int i = 1; i < 101; ++i) if (v[i]) ++res;
return res;
}
};
第二题
此题可转换为 小于等于 len(grades) 的 1 ~ n 之和,求n
class Solution {
public:
int maximumGroups(vector<int>& grades) {
int ans = 0, total = 0, n = grades.size();
for (int i = 1; total < n; i++, total += i)
ans ++;
return ans;
}
};