#include <iostream> using namespace std; int main() { int num; cin >> num; int cnt = 0; int maxC = 0; while (num != 0) { if (num % 2 == 1) { cnt++; } else { cnt = 0; } num = num / 2; maxC = max(maxC, cnt); } cout << maxC << endl; }
转化为2进制时顺便计数
#include <iostream> using namespace std; int main() { int num; cin >> num; int cnt = 0; int maxC = 0; while (num != 0) { if (num % 2 == 1) { cnt++; } else { cnt = 0; } num = num / 2; maxC = max(maxC, cnt); } cout << maxC << endl; }
转化为2进制时顺便计数