Đăng nhập để hỏi chi tiết


Hãy luôn nhớ cảm ơn và vote 5*
nếu câu trả lời hữu ích nhé!
Giải thích thuật toán:
Để chia nhóm mà mỗi nhóm có số thành viên là số lẻ thì ta sẽ phân tích `n=2^tx` `(xtext[ lẻ])`
Dễ thấy đây là trường hợp có số thành viên là lớn nhất
#include <bits/stdc++.h>
#define int long long
using namespace std;
signed main()
{
ios::sync_with_stdio(0);
cin.tie(0); cout.tie(0);
int n, groups = 1; cin >> n;
while (n % 2 == 0)
{
n /= 2;
groups *= 2;
}
cout << groups << ' ' << n;
}Hãy giúp mọi người biết câu trả lời này thế nào?
![]()
#include <bits/stdc++.h>
#define ll long long
using namespace std;
int main() {
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
//freopen("ODD.INP", "r", stdin);
//freopen("ODD.OUT", "w", stdout);
ll n;
cin >> n;
ll td=1;
for (ll i=1;i*i<=n;i++) {
if (n%i==0) {
if (i%2==1) td=max(td,i);
ll bk=n/i;
if (bk%2==1) td=max(td,bk);
}
}
cout<<n/td<<" "<<td<<'\n';
return 0;
}
Hãy giúp mọi người biết câu trả lời này thế nào?
Bảng tin
0
45
0
tle vs sai kq bn ạ