阅读量:0
数据范围只有 1 0 5 10^5 105所以我们可以直接暴力枚举,然后我们知道假操作一定是在最开始进行,至于加多少次我们可以直接枚举
class Solution { public: int minOperations(int k) { // 只可能先加后叠加 if (k == 1) return 0; int ans = 0x7ffffff; int now = 1; for (int i = 1; i <= k; i++) { now = now + i; int temp = i + k / (now)+k % now ? 1 : 0; ans = min(ans, temp); } return ans; } };