Skip to content

洛谷P1010 幂次方

问题描述

link

分析

参考代码

cpp
#include <bits/stdc++.h>
using namespace std;

void solve(int a) {
	for (int i = 15; i >= 0; i--) {
		if (pow(2, i) <= a) {
			if (i == 1) cout << "2";
			else if (i == 0) cout << "2(0)";
			else {
				cout << "2(";
				solve(i);
				cout << ")";
			}
			a -= pow(2, i);
			if (a != 0) cout << "+";
		}
	}
}

int main() {
	int a; cin >> a;

	solve(a);

	return 0;
}