图片说明

题解:对于此题,如果直接用暴力搜索,预计会超时。但是其实只需要构造一个计算公式即可,计x = (n / a) * a + b,如果超出了n,那么我们只需要减掉a即可,反之,直接返回x即可。
时间复杂度:图片说明
空间复杂度:图片说明
参考代码:

class Solution {
public:
    /**
     * 返回满足条件的最大的x。
     * @param a int整型 代表题意中的a
     * @param b int整型 代表题意中的b
     * @param n int整型 代表题意中的n
     * @return int整型
     */
    int solve(int a, int b, int n) {
        // write code here
        int x = (n / a) * a + b;
        return x > n ? x -= a : x;
    }
};