数字游戏C++

题目:


题目就是让你输入一个长度为88的0101串,让你求出中间1有几个。


wo一看到这题,立马想到暴力求解:循环八遍,每次输入一个char,减掉四十八加一起,输出,

细细一想:诶,可以。你看那:11111111<6∗10711111111<6∗107,那就上啊!


然后就写出一个超级暴力的代码:

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int a[11111112];
int main(){
	int soeasy;//别在意变量名好嘛......
	cin>>soeasy;
	for(int i=0;i<=1;i++)
		for(int j=0;j<=1;j++)
			for(int k=0;k<=1;k++)
				for(int l=0;l<=1;l++)
					for(int m=0;m<=1;m++)
						for(int n=0;n<=1;n++)
							for(int o=0;o<=1;o++)
								for(int p=0;p<=1;p++)
									a[i*10000000+j*1000000+k*100000+l*10000+m*1000+n*100+o*10+p]=i+j+k+l+m+n+o+p;
	cout<<a[soeasy];
	return 0;
}

好的。这份代码可以AC,但是.........有点不够爽啊!

略加思索,加上一条语句。


cpp 复制代码
#include <bits/stdc++.h>
using namespace std;
int a[11111112];
int main(){
	for(int i=0;i<=1;i++)
		for(int j=0;j<=1;j++)
			for(int k=0;k<=1;k++)
				for(int l=0;l<=1;l++)
					for(int m=0;m<=1;m++)
						for(int n=0;n<=1;n++)
							for(int o=0;o<=1;o++)
								for(int p=0;p<=1;p++)
									a[i*10000000+j*1000000+k*100000+l*10000+m*1000+n*100+o*10+p]=i+j+k+l+m+n+o+p,cout<<"a["<<i*10000000+j*1000000+k*100000+l*10000+m*1000+n*100+o*10+p<<"]="<<i+j+k+l+m+n+o+p<<";"<<endl;
	return 0;
}

嗯,完美!运行一下,表就出来了。


cpp 复制代码
a[0]=0;
a[1]=1;
a[10]=1;
a[11]=2;
a[100]=1;
a[101]=2;
a[110]=2;
a[111]=3;
a[1000]=1;
a[1001]=2;
a[1010]=2;
a[1011]=3;
a[1100]=2;
a[1101]=3;
a[1110]=3;
a[1111]=4;
a[10000]=1;
a[10001]=2;
a[10010]=2;
a[10011]=3;
a[10100]=2;
a[10101]=3;
a[10110]=3;
a[10111]=4;
a[11000]=2;
a[11001]=3;
a[11010]=3;
a[11011]=4;
a[11100]=3;
a[11101]=4;
a[11110]=4;
a[11111]=5;
a[100000]=1;
a[100001]=2;
a[100010]=2;
a[100011]=3;
a[100100]=2;
a[100101]=3;
a[100110]=3;
a[100111]=4;
a[101000]=2;
a[101001]=3;
a[101010]=3;
a[101011]=4;
a[101100]=3;
a[101101]=4;
a[101110]=4;
a[101111]=5;
a[110000]=2;
a[110001]=3;
a[110010]=3;
a[110011]=4;
a[110100]=3;
a[110101]=4;
a[110110]=4;
a[110111]=5;
a[111000]=3;
a[111001]=4;
a[111010]=4;
a[111011]=5;
a[111100]=4;
a[111101]=5;
a[111110]=5;
a[111111]=6;
a[1000000]=1;
a[1000001]=2;
a[1000010]=2;
a[1000011]=3;
a[1000100]=2;
a[1000101]=3;
a[1000110]=3;
a[1000111]=4;
a[1001000]=2;
a[1001001]=3;
a[1001010]=3;
a[1001011]=4;
a[1001100]=3;
a[1001101]=4;
a[1001110]=4;
a[1001111]=5;
a[1010000]=2;
a[1010001]=3;
a[1010010]=3;
a[1010011]=4;
a[1010100]=3;
a[1010101]=4;
a[1010110]=4;
a[1010111]=5;
a[1011000]=3;
a[1011001]=4;
a[1011010]=4;
a[1011011]=5;
a[1011100]=4;
a[1011101]=5;
a[1011110]=5;
a[1011111]=6;
a[1100000]=2;
a[1100001]=3;
a[1100010]=3;
a[1100011]=4;
a[1100100]=3;
a[1100101]=4;
a[1100110]=4;
a[1100111]=5;
a[1101000]=3;
a[1101001]=4;
a[1101010]=4;
a[1101011]=5;
a[1101100]=4;
a[1101101]=5;
a[1101110]=5;
a[1101111]=6;
a[1110000]=3;
a[1110001]=4;
a[1110010]=4;
a[1110011]=5;
a[1110100]=4;
a[1110101]=5;
a[1110110]=5;
a[1110111]=6;
a[1111000]=4;
a[1111001]=5;
a[1111010]=5;
a[1111011]=6;
a[1111100]=5;
a[1111101]=6;
a[1111110]=6;
a[1111111]=7;
a[10000000]=1;
a[10000001]=2;
a[10000010]=2;
a[10000011]=3;
a[10000100]=2;
a[10000101]=3;
a[10000110]=3;
a[10000111]=4;
a[10001000]=2;
a[10001001]=3;
a[10001010]=3;
a[10001011]=4;
a[10001100]=3;
a[10001101]=4;
a[10001110]=4;
a[10001111]=5;
a[10010000]=2;
a[10010001]=3;
a[10010010]=3;
a[10010011]=4;
a[10010100]=3;
a[10010101]=4;
a[10010110]=4;
a[10010111]=5;
a[10011000]=3;
a[10011001]=4;
a[10011010]=4;
a[10011011]=5;
a[10011100]=4;
a[10011101]=5;
a[10011110]=5;
a[10011111]=6;
a[10100000]=2;
a[10100001]=3;
a[10100010]=3;
a[10100011]=4;
a[10100100]=3;
a[10100101]=4;
a[10100110]=4;
a[10100111]=5;
a[10101000]=3;
a[10101001]=4;
a[10101010]=4;
a[10101011]=5;
a[10101100]=4;
a[10101101]=5;
a[10101110]=5;
a[10101111]=6;
a[10110000]=3;
a[10110001]=4;
a[10110010]=4;
a[10110011]=5;
a[10110100]=4;
a[10110101]=5;
a[10110110]=5;
a[10110111]=6;
a[10111000]=4;
a[10111001]=5;
a[10111010]=5;
a[10111011]=6;
a[10111100]=5;
a[10111101]=6;
a[10111110]=6;
a[10111111]=7;
a[11000000]=2;
a[11000001]=3;
a[11000010]=3;
a[11000011]=4;
a[11000100]=3;
a[11000101]=4;
a[11000110]=4;
a[11000111]=5;
a[11001000]=3;
a[11001001]=4;
a[11001010]=4;
a[11001011]=5;
a[11001100]=4;
a[11001101]=5;
a[11001110]=5;
a[11001111]=6;
a[11010000]=3;
a[11010001]=4;
a[11010010]=4;
a[11010011]=5;
a[11010100]=4;
a[11010101]=5;
a[11010110]=5;
a[11010111]=6;
a[11011000]=4;
a[11011001]=5;
a[11011010]=5;
a[11011011]=6;
a[11011100]=5;
a[11011101]=6;
a[11011110]=6;
a[11011111]=7;
a[11100000]=3;
a[11100001]=4;
a[11100010]=4;
a[11100011]=5;
a[11100100]=4;
a[11100101]=5;
a[11100110]=5;
a[11100111]=6;
a[11101000]=4;
a[11101001]=5;
a[11101010]=5;
a[11101011]=6;
a[11101100]=5;
a[11101101]=6;
a[11101110]=6;
a[11101111]=7;
a[11110000]=4;
a[11110001]=5;
a[11110010]=5;
a[11110011]=6;
a[11110100]=5;
a[11110101]=6;
a[11110110]=6;
a[11110111]=7;
a[11111000]=5;
a[11111001]=6;
a[11111010]=6;
a[11111011]=7;
a[11111100]=6;
a[11111101]=7;
a[11111110]=7;
a[11111111]=8;
然后再把这份表剪到空代码中,最终的面向数据的轻量级编程就实现啦~
 
#include <bits/stdc++.h>
using namespace std;
int a[11111112];
int main(){
	int soeasy;
	cin>>soeasy;
	a[0]=0;
	a[1]=1;
	a[10]=1;
	a[11]=2;
	a[100]=1;
	a[101]=2;
	a[110]=2;
	a[111]=3;
	a[1000]=1;
	a[1001]=2;
	a[1010]=2;
	a[1011]=3;
	a[1100]=2;
	a[1101]=3;
	a[1110]=3;
	a[1111]=4;
	a[10000]=1;
	a[10001]=2;
	a[10010]=2;
	a[10011]=3;
	a[10100]=2;
	a[10101]=3;
	a[10110]=3;
	a[10111]=4;
	a[11000]=2;
	a[11001]=3;
	a[11010]=3;
	a[11011]=4;
	a[11100]=3;
	a[11101]=4;
	a[11110]=4;
	a[11111]=5;
	a[100000]=1;
	a[100001]=2;
	a[100010]=2;
	a[100011]=3;
	a[100100]=2;
	a[100101]=3;
	a[100110]=3;
	a[100111]=4;
	a[101000]=2;
	a[101001]=3;
	a[101010]=3;
	a[101011]=4;
	a[101100]=3;
	a[101101]=4;
	a[101110]=4;
	a[101111]=5;
	a[110000]=2;
	a[110001]=3;
	a[110010]=3;
	a[110011]=4;
	a[110100]=3;
	a[110101]=4;
	a[110110]=4;
	a[110111]=5;
	a[111000]=3;
	a[111001]=4;
	a[111010]=4;
	a[111011]=5;
	a[111100]=4;
	a[111101]=5;
	a[111110]=5;
	a[111111]=6;
	a[1000000]=1;
	a[1000001]=2;
	a[1000010]=2;
	a[1000011]=3;
	a[1000100]=2;
	a[1000101]=3;
	a[1000110]=3;
	a[1000111]=4;
	a[1001000]=2;
	a[1001001]=3;
	a[1001010]=3;
	a[1001011]=4;
	a[1001100]=3;
	a[1001101]=4;
	a[1001110]=4;
	a[1001111]=5;
	a[1010000]=2;
	a[1010001]=3;
	a[1010010]=3;
	a[1010011]=4;
	a[1010100]=3;
	a[1010101]=4;
	a[1010110]=4;
	a[1010111]=5;
	a[1011000]=3;
	a[1011001]=4;
	a[1011010]=4;
	a[1011011]=5;
	a[1011100]=4;
	a[1011101]=5;
	a[1011110]=5;
	a[1011111]=6;
	a[1100000]=2;
	a[1100001]=3;
	a[1100010]=3;
	a[1100011]=4;
	a[1100100]=3;
	a[1100101]=4;
	a[1100110]=4;
	a[1100111]=5;
	a[1101000]=3;
	a[1101001]=4;
	a[1101010]=4;
	a[1101011]=5;
	a[1101100]=4;
	a[1101101]=5;
	a[1101110]=5;
	a[1101111]=6;
	a[1110000]=3;
	a[1110001]=4;
	a[1110010]=4;
	a[1110011]=5;
	a[1110100]=4;
	a[1110101]=5;
	a[1110110]=5;
	a[1110111]=6;
	a[1111000]=4;
	a[1111001]=5;
	a[1111010]=5;
	a[1111011]=6;
	a[1111100]=5;
	a[1111101]=6;
	a[1111110]=6;
	a[1111111]=7;
	a[10000000]=1;
	a[10000001]=2;
	a[10000010]=2;
	a[10000011]=3;
	a[10000100]=2;
	a[10000101]=3;
	a[10000110]=3;
	a[10000111]=4;
	a[10001000]=2;
	a[10001001]=3;
	a[10001010]=3;
	a[10001011]=4;
	a[10001100]=3;
	a[10001101]=4;
	a[10001110]=4;
	a[10001111]=5;
	a[10010000]=2;
	a[10010001]=3;
	a[10010010]=3;
	a[10010011]=4;
	a[10010100]=3;
	a[10010101]=4;
	a[10010110]=4;
	a[10010111]=5;
	a[10011000]=3;
	a[10011001]=4;
	a[10011010]=4;
	a[10011011]=5;
	a[10011100]=4;
	a[10011101]=5;
	a[10011110]=5;
	a[10011111]=6;
	a[10100000]=2;
	a[10100001]=3;
	a[10100010]=3;
	a[10100011]=4;
	a[10100100]=3;
	a[10100101]=4;
	a[10100110]=4;
	a[10100111]=5;
	a[10101000]=3;
	a[10101001]=4;
	a[10101010]=4;
	a[10101011]=5;
	a[10101100]=4;
	a[10101101]=5;
	a[10101110]=5;
	a[10101111]=6;
	a[10110000]=3;
	a[10110001]=4;
	a[10110010]=4;
	a[10110011]=5;
	a[10110100]=4;
	a[10110101]=5;
	a[10110110]=5;
	a[10110111]=6;
	a[10111000]=4;
	a[10111001]=5;
	a[10111010]=5;
	a[10111011]=6;
	a[10111100]=5;
	a[10111101]=6;
	a[10111110]=6;
	a[10111111]=7;
	a[11000000]=2;
	a[11000001]=3;
	a[11000010]=3;
	a[11000011]=4;
	a[11000100]=3;
	a[11000101]=4;
	a[11000110]=4;
	a[11000111]=5;
	a[11001000]=3;
	a[11001001]=4;
	a[11001010]=4;
	a[11001011]=5;
	a[11001100]=4;
	a[11001101]=5;
	a[11001110]=5;
	a[11001111]=6;
	a[11010000]=3;
	a[11010001]=4;
	a[11010010]=4;
	a[11010011]=5;
	a[11010100]=4;
	a[11010101]=5;
	a[11010110]=5;
	a[11010111]=6;
	a[11011000]=4;
	a[11011001]=5;
	a[11011010]=5;
	a[11011011]=6;
	a[11011100]=5;
	a[11011101]=6;
	a[11011110]=6;
	a[11011111]=7;
	a[11100000]=3;
	a[11100001]=4;
	a[11100010]=4;
	a[11100011]=5;
	a[11100100]=4;
	a[11100101]=5;
	a[11100110]=5;
	a[11100111]=6;
	a[11101000]=4;
	a[11101001]=5;
	a[11101010]=5;
	a[11101011]=6;
	a[11101100]=5;
	a[11101101]=6;
	a[11101110]=6;
	a[11101111]=7;
	a[11110000]=4;
	a[11110001]=5;
	a[11110010]=5;
	a[11110011]=6;
	a[11110100]=5;
	a[11110101]=6;
	a[11110110]=6;
	a[11110111]=7;
	a[11111000]=5;
	a[11111001]=6;
	a[11111010]=6;
	a[11111011]=7;
	a[11111100]=6;
	a[11111101]=7;
	a[11111110]=7;
	a[11111111]=8;
	cout<<a[soeasy];
	return 0;
}
相关推荐
斯派的曼1 分钟前
学习C++的第七天!
开发语言·c++·学习
街 三 仔2 分钟前
【C语言零基础入门篇 - 15】:单链表
c语言·开发语言
苏格拉没有底1113 分钟前
数据结构——顺序表、链表
c语言·开发语言·数据结构·笔记·学习·算法·链表
hhhcbw13 分钟前
C++ STL容器(二) —— list 底层剖析
c++·链表·list·msvc·c++容器
Pandaconda20 分钟前
【计算机网络 - 基础问题】每日 3 题(二十三)
开发语言·网络·笔记·后端·计算机网络·面试·职场和发展
界面开发小八哥23 分钟前
如何用LightningChart Python实现地震强度数据可视化应用程序?
开发语言·python·信息可视化
野生派蒙23 分钟前
IDEA 关闭自动补全功能(最新版本)
java·开发语言·ide·后端·学习·intellij-idea
林小果124 分钟前
观察者模式
java·开发语言·观察者模式·设计模式
穷人小水滴33 分钟前
Android (rust) vulkan (JNI) 画一个三角形: VulkanSurfaceView 初始化
android·开发语言·rust·gpu·jni·vulkan·surfaceview
Leaf Ye34 分钟前
Android常用C++特性之std::move
c++