站外题求助,玄关,在线等。
  • 板块灌水区
  • 楼主RockyQ012
  • 当前回复2
  • 已保存回复2
  • 发布时间2024/10/4 18:11
  • 上次更新2024/10/4 18:39:23
查看原帖
站外题求助,玄关,在线等。
1299348
RockyQ012楼主2024/10/4 18:11

给定整数 AA, BB, NN

找出一个 NN 以下的非负整数 XX,使得 floor(AX/B)Afloor(X/B)floor(AX / B) - A * floor(X / B) 的最大。

输出满足题意的 floor(AX/B)Afloor(X/B)floor(AX / B) - A * floor(X / B) 最大值

样例输入:1111 1010 99

样例输出:99

#include <bits/stdc++.h>
using namespace std;
int main() {
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
	long long a , b , n;
	cin >> a >> b >> n;
	long long m = n - 1;
	long long p = floor(a * m / b) - a * floor(m / b);
	long long q = floor(a * n / b) - a * floor(n / b);
    if(p >= q) cout << p;
    else cout << q;
	return 0;
}
2024/10/4 18:11
加载中...