精灵防御塔
描述
精灵王国即将受到黑魔法的攻击,国王下令为每一座防御塔安装防护罩,一共有500座防御塔,编号为1~500,需要根据防御塔的编号安装不同的防护罩,若将防御塔编号转化为二进制数,在此二进制数中,如果数字1的个数大于等于数字0的个数则安装高压防护罩,否则就安装低压防护罩。 例如: (16)10 = (10000)2,其中0的个数大于1的个数,则安装低压防护罩; (29)10 = (11101)2,其中1的个数大于0的个数,则安装高压防护罩; (56)10 = (111000)2,其中1的个数等于0的个数,则安装高压防护罩; 程序要求:输入防御塔的编号n,输出所需安装防护罩的种类。
输入
仅一行,防御塔的编号n (1<=n<=500).
输出
仅一行,所需安装防护罩的种类;
样例输入
29
样例输出
高压
这道题其实比较不简单,希望大家想一下
我自己也想了一种,又向cpp_learner他请教了一下
下面就展示一下
首先是我的代码
#include <iostream>
using namespace std;
int main(){
int n,z,o;
cin>>n;
z=o=0;
while(n!=0){
if(n%2==1) one++;