#include<iostream>usingnamespace std;intmain(){int n;
cin >> n;int res =0;for(int i =2; i < n /2; i ++){if(n % i ==0){int res =max(i, n / i);
cout << res << endl;return0;}}return0;}
思路:暴力枚举遍历就行了, 不过全部遍历一遍会超时,稍微简化一下,把没必要的扔掉,我们只需要遍历到第一个能除尽的数就够了, 后面的那个数肯定是最大的代码如下:#include <iostream>using namespace std;int main(){ int n; cin >> n; int res = 0; for(int i = 2; i < n / 2; i ++) { if(n % i =.