<bitset>真好用
#include <iostream> #include <bitset> using namespace std; int main() { int n; cin >> n; bitset<32> b(n); string str = b.to_string(); int max_len = 0; int count = 0; for(int i = 0; i < str.size(); ++i) { if(str[i] == '1') ++count; else { max_len = max(max_len, count); count = 0; } } cout << (count > max_len ? count : max_len) << endl; return 0; }