【趣味】一个将任意数字分解成 114514 构成的公式的工具
灵感来源:Github_homo
刷 Github 看到的项目,很有意思,就想着自己写一个。
众所周知,任意一个十进制数都可以拆分成若干个二进制数相加,所以只需要将所有的二的整数次幂用 114514 表示一遍,再将输入的数拆分成二进制数,最后输出即可。此处应该上打表
原理就是这样,下面上大家最喜欢的代码:
#include <iostream>
using namespace std;
const int N = 32;
int n, a[N];
bool isFirst = true;
string s[N] = {"", "11/(45-1)*4", "-11+4-5+14", "-11-4+5+14", "11-4+5/1-4", "11-4-5+14", "1*1+45-14", "11*4+5*1*4", "1+1+(4+5)*14", "(114-51)*4+(-11-4+5+14)", "1+1-4+514", "1*(1+4)*51*4+(-11-4+5+14)", "-11+4*514+(11*-4+51-4)", "(1+1)*451*4+(11*(45-1)+4)", "114*5*14+((1+1)*4+51*4)", "1145*14+((11-4)*51-4+(11/(45-1)*4))", "114*51*4+((1+1)*4514+(11*45-14+(11*-4+51-4)))", "114*514+(11*45*14+(-11/4+51/4))", "114514+(1145*14+(1*14+514))", "114514*(-11+4-5+14)+(114*51*4+((1+1)*4514+(11+4*51*4+(11-4*5+14))))", "114514*(-11-4+5+14)+(114*514+(1+14*514+((1+145)*-(1-4)+(11/(45-1)*4))))", "114514*(11-4+5+1-4)+(1145*14+((11+451)*4+(-1-1+4+5*14)))", "114514*(1+1+4*5*1-4)+(114*51*4+(11451+4+(1145+14+(1*-1+45-14))))", "114514*(11+4*5+1+4)+(114*514+(11451+4+(114*-5*(1-4)+(-11+45+1+4))))", "114514*(1*14*5-1+4)+(114*51*4+(114*51+4+(-11+4+5+14)))", "114514*(11+45*-(1-4))+(11*4514+(114*5*14+(1+14+514+(11-4+5+1-4))))", "114514*(11+4*5*14+(-11+4-5+14))+(114*(5-1)*4+(1-14+5+14))", "114514*(114*5+14+(-11+4-5+14))+((1+1)*451*4+(11+45/1-4))", "114514*(1145+14+(1*14-5/1+4))+(1+14*514+(114-5+14))", "114514*(114*5*1*4+(11*4+5*1*4))+(1+14514+(-1-14*(5-14)))", "114514*((1145+1)*4+(114-5-1-4))+(114*51*4+(114*51+4+(11*4*5-14)))", "114514*((1+1)*4514+(11*(45-14)+(11-4+5-1-4)))+(11*4514+(114*5*14+(-(1-14)*5*14+(11-4-5+14))))"};
void print(int x) {if (isFirst) {isFirst = false;} else {if (s[x][0] != '-') cout << '+';}cout << s[x];
}
void BinarySplit(int x) {for (int i = 30; i >= 0; i--) if ((1<<i) & x) print(i+1);
}
int main() {ios::sync_with_stdio(false);cin.tie(0); cout.tie(0);cin >> n;BinarySplit(n);return 0;
}
该代码只支持拆分 1≤n≤21474836471\le n\le 21474836471≤n≤2147483647 的数
由于算法不同,最终输出的结果可能与原站也不同
UPT 2022/06/03: 更新了一处错误
【趣味】一个将任意数字分解成 114514 构成的公式的工具相关推荐
- 在PS里要怎么样才能把一个图片的数字改成另一个数字,还要看不出来?
转自: http://zhidao.baidu.com/link?url=fGmHdcGZu76sRD3VQWxoQwQIDps5qlATz2tVPcggPMndChrXq3c9OfxloMZxHsY ...
- python中如何将一个数字分解成一个列表
将数字分解成列表 问题如下 写一个函数get_digits(n),将参数n分解出每个位的数字并按顺序存放到列表中.举例:get_digits(12345) ==> [1, 2, 3, 4, 5] ...
- 华为机试——将一个数分解成两个质数之和
题目描述 * 题目描述:数字分解,将一个数字分解成两个质数相加 * 输入描述:给定数字 * 输出描述:两个质数之和 * 输入示例:10 * 输出示例:10=3+7 代码实现 /************ ...
- 如何将数字转换成英语
受 Project Euler Problem 17 的启发,写了(其实是改写)一个能把数字转换成英语的Ruby 过程. # zero, one, two, three, four, five, si ...
- 借用该函数验证哥德巴赫猜想:任意一个大的偶数都可以分解成两个素数之和。
定义一个函数,实现判断某个整数是否是素数.借用该函数验证哥德巴赫猜想:任意一个大的偶数都可以分解成两个素数之和.从键盘输入一个偶数,输出该偶数的两个素数之和. 代码段: #include <io ...
- 【数字排列】小明负责公司年会,想出一个趣味游戏: 屏幕给出1~9中任意4个不重复的数字,大家以最快时间给出这几个数字可拼成的数字从小到大排列位于第N位置的数字,其中N为给出的数字中最大的
[问题描述]小明负责公司年会,想出一个趣味游戏: 屏幕给出1-9中任意4个不重复的数字, 大家以最快时间给出这几个数字可拼成的数字从小到大排列位于第N位置的数字,其中N为给出的数字中最大的(如果不到 ...
- 把一个数分解成任意几个数的和,把所有的可能性列出来
把一个数分解成任意几个数的和,把所有的可能性列出来 4=1+3 4=2+2 4=1+1+2 4=1+1+1+1 类似于有4个苹果放入n个篮子 通过创建二维数组将数字分别放进去 分别考虑 当都为一的情况 ...
- excel将大表分解成小表,将小表合成一个大表
1.将一个十几几万行的表分解成小表 请用微软的excel 不要用wps 用excel打开改文件,按alt+f11,选择你要分解的主表 界面如图: 输入下面的代码 Sub cfb() Dim r, c ...
- 扑克牌中的顺子。从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的。2~10为数字本身,A为1,J为11,Q为12,K为13,而大、小王可以看成任意数字。
面试题36:扑克牌中的顺子 1.题目描述 题目:从扑克牌中随机抽5张牌,判断是不是一个顺子,即这5张牌是不是连续的.2~10为数字本身,A为1,J为11,Q为12,K为13,而大.小王可以看成任意数字 ...
最新文章
- Chrome禁用浏览器跨域拦截
- python中io.textio_Python文件读写概述(IO操作、文件读写、stringiobytesio、序列化),python,的,小,总结,StringIOBytesIO...
- 秒杀系统必须考虑的 3 个技术问题!
- 阿里云播放器直播rtsp、rtmp、flv流,flash播放直播流
- SpringMVC工作原理及其流程
- overload方法重载
- 基于java的enigma的加密程序
- mac 全局安装 Cz 工具【踩坑】
- React 事件处理
- Second season sixth episode,Chandler and Joey lost Ross‘s baby???!!!
- IT历史上被引述最多的10句名人名言
- 企业“招投标”一般需要办理哪些体系认证?
- 消逝的Coin:Stratum协议劫持技术
- MyBatis基本工作原理
- ant design vue全局引用一直提示没有isMoment参数的问题
- 树莓派linux系统配置AODV协议,linux上模拟AODV路由协议 下面一些信息求各路大神解释!!...
- 1.3 小白黑群晖系统安装:基于arpl、引导镜像 两种方式教程(含洗白)
- 人机融合很难,恰当的人机分离更难
- 【HDFS】文件入Trash-rename操作
- 2014,说说这个燥热的暑假
热门文章
- DOTA2匹配机制详解
- 腾云忆想构建云化IT生态,助力我国“双循环经济”数字化升级
- 计算机一级wps选择题必背知识点,计算机一级WPS提高练习题及答案
- 小程序 身份认证服务器,如何实现微信小程序与.net core应用服务端的无状态身份验证...
- 【自然语言处理与文本分析】用两个项目案例介绍文本挖掘方法论。
- 机器学习之---文本分析(jieba分词和词云绘制)
- 谷歌学术+SCI-HUB一键下载SCI文献
- 在Unity中实现体素化
- 智慧档案室改造建设方案 - 一站式建设智慧档案馆建设方案
- 点心云pcdn跑不起来解决办法(不起量)