酷代码 AI
菜单
服务商

C++ 求解整数减少至 0 使奇数次数最少的最小纠结次数问题

```cpp #include <iostream> #include <vector> using ll = long long; ll minOddCount(ll n) { std::vector<ll> dp(n + 1, INT_MAX); dp[0] = 0; for (ll i = 1; i <= n; ++i) { if (i % 2 == 0) { dp[i] = dp[i / 2] + 1; } else { dp[i] = std::min(dp[(i + 1) / 2] + 1, dp[(i - 1) / 2] + 1); } } return dp[n]; } int main() { ll t; std::cin >> t; while (t--) { ll n; std::cin >> n; std::cout << minOddCount(n) << std::endl; } return 0; } ``` ######[AI写代码神器 | 229点数解答 | 2024-08-21 16:33:58]

相关提问
本站限时免费提问中
实用工具查看更多
Linux在线手册 [开发类]
Jquery在线手册 [开发类]
今日油价 [生活类]
图片互转base64 [开发类]
时间转换器 [开发类]