一个关于从1到100的加法算法
从1到100,100个数字相加,和为100的算法,可以1位,2位,3位等,不限位数相加,数字不能重复,可以有多少种算法,并把代码贴出;
可以这样:
1 + 99;
2 + 98;
也可以这样:
1 + 2 + 97;
更可以这样:
1 + 2 + 3 + 5 + 7 + 82;
随手用C#写了一下实现代码,部分结果如下:
...
1+2+3+4+5+6+7+8+9+10+14+15+16
1+2+3+4+5+6+7+8+9+11+12+13+19
1+2+3+4+5+6+7+8+9+11+12+14+18
1+2+3+4+5+6+7+8+9+11+12+15+17
1+2+3+4+5+6+7+8+9+11+13+14+17
1+2+3+4+5+6+7+8+9+11+13+15+16
1+2+3+4+5+6+7+8+9+12+13+14+16
1+2+3+4+5+6+7+8+10+11+12+13+18
1+2+3+4+5+6+7+8+10+11+12+14+17
1+2+3+4+5+6+7+8+10+11+12+15+16
1+2+3+4+5+6+7+8+10+11+13+14+16
1+2+3+4+5+6+7+8+10+12+13+14+15
1+2+3+4+5+6+7+9+10+11+12+13+17
1+2+3+4+5+6+7+9+10+11+12+14+16
1+2+3+4+5+6+7+9+10+11+13+14+15
1+2+3+4+5+6+8+9+10+11+12+13+16
1+2+3+4+5+6+8+9+10+11+12+14+15
1+2+3+4+5+7+8+9+10+11+12+13+15
1+2+3+4+6+7+8+9+10+11+12+13+14
Start Time: 2006-9-5 10:53:24
End Time: 2006-9-5 10:58:39
Total Time: 00:05:14.3906250
Total Count: 444792
如果不输出式子,结果如下:
Start Time: 2006-9-5 11:01:13
End Time: 2006-9-5 11:01:14
Total Time: 00:00:01.8750000
Total Count: 444792
完整代码如下:
///2006-09-05
using System;
using System.Collections.Generic;
using System.Text;
using System.Collections;
namespace OneToHundred
{
class Program
{
static ArrayList alFormula = new ArrayList();
static string strTempFormula;
static void Main(string[] args)
{
DateTime dtStart = DateTime.Now;
AddFormula("",1,100);
for (int i = 0; i < alFormula.Count; i++)
{
string strTemp = alFormula[i].ToString();
string[] str = strTemp.Split("+".ToCharArray());
strTemp = strTemp.Substring(0, strTemp.Length - str[str.Length - 1].ToString().Length);
AddFormula(strTemp, int.Parse(str[str.Length - 2]) + 1, int.Parse(str[str.Length - 1]));
}
DateTime dtEnd = DateTime.Now;
TimeSpan ts = DateTime.Now.Subtract(dtStart);
double count= ts.TotalMilliseconds;
Console.WriteLine("Start Time:\t" + dtStart);
Console.WriteLine("End Time:\t" + dtEnd);
Console.WriteLine("Total Time:\t" + ts);
Console.WriteLine("Total Count:\t" + alFormula.Count);
Console.ReadLine();
}
static void AddFormula(string Formual,int Start, int End)
{
int intTemp = (int)Math.Round((double)(End / 2));
if (End % 2 != 0)
{
intTemp += 1;
}
for (int i = Start; i < intTemp; i++)
{
strTempFormula = Formual + i.ToString() + "+" + (End - i).ToString();
//Console.WriteLine(strTempFormula); //显示每个满足条件的式子
alFormula.Add(strTempFormula);
}
}
}
}
一个关于从1到100的加法算法相关推荐
- Java黑皮书课后题第3章:3.10(游戏:加法测试)程序清单3-3随机产生一个减法问题。修改这个程序,随机产生一个计算两个小于100的整数的加法问题
3.10(游戏:加法测试)程序清单3-3随机产生一个减法问题.修改这个程序,随机产生一个计算两个小于100的整数的加法问题 题目 题目概述 参考:程序清单3-3 代码 题目 题目概述 3.10(游戏: ...
- XYNUOJ : 100以内加法计算
1757: 100以内加法计算 时间限制: 1 Sec 内存限制: 128 MB 题目描述 胡八一今年3岁 ...
- Java:100以内加法练习程序!
问题:设计一个循环六次计算100以内两位数加法的运算程序,统计计算次数跟正确数并打印输出,并且计算出该程序运行的时间以秒为单位打印输出! 代码: package wangke; import java ...
- 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少?...
代码: package com.liron.p1; /*** 一个整数,它加上100后是一个完全平方数,再加上168又是* 一个完全平方数,请问该数是多少?* */ public class Topi ...
- 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少...
一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少 /*** 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少* * @a ...
- 取到小数后三位_小数名师工作室 数学实验 || 一个小数乘10、100、1000……的计算规律...
一个小数乘10.100.1000--的计算规律 设计者简介 方长梅 扬州市甘泉小学 扬州市中青年教学骨干 实验视频 实验目的 由观察一个小数乘10引起的小数点位置变化现象引发猜想,再通过举例.类比.推 ...
- 在10000以内判断一个整数,它加上100和加上268后都是一个完全平方数 3 提问:请问该数是多少?...
1 ''' 2 在10000以内判断一个整数,它加上100和加上268后都是一个完全平方数 3 提问:请问该数是多少? 4 ''' 5 import math 6 for i in range(100 ...
- 一个C++工程CPU占用100%问题的排查
最近遇到一个 C++ 工程CPU占用100%的问题,经过排查,发现原来是不再使用的代码片段的问题,本文记录了排查的过程,并给出示例代码片段. 发现问题 某日,运维反馈生产环境某台设备出现问题,某个进程 ...
- 萌新的Python练习实例100例(三)一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数
题目: 一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少? 分析: 根据题目得出: 整数x²=i+100,y²=i+100+168 采用for in 遍历为i ...
最新文章
- SLF4J: Failed to load class org.slf4j.impl.StaticLoggerBinder.
- mochawesome如何合并测试报告_Vue项目采用Cypress做e2e自动化测试,手把手一撸到底...
- python向服务器请求压缩数据及解压缩数据
- 软件测试之python面试题_常见Python面试题整理带答案
- NYOJ--22--素数求和问题
- 从零基础入门Tensorflow2.0 ----六、29keras_generator读取 kaggle 10 monkeys数据
- 分享六:php脚本守护进程
- 会声会影2020试用版如何激活序列号正式版及快速零基础剪辑教程
- 把FIL放在哪里最值钱
- 在Mac上使用android studio调试android手机
- “走进名企”——微软亚洲研究院
- iOSApp是如何启动的
- VLOOKUP常见错误及解决办法
- 【MySQL】MySQL 的连接(内、左、右、全)
- 李想的理想 IPO :新造车「异类」背后的思考
- python-pygame与pymunk-台球游戏
- 数理逻辑——ND系统
- Unity_飘伤害_053
- 保持忠贞是不容易的,需要持续付出努力
- 2022熔化焊接与热切割考试模拟100题及在线模拟考试
热门文章
- python列表求和显示unsupport_本地使用pip命令安装requests库,提示unknow or unsupported command install解决方法...
- springcloud架构特点_你想了解的「Spring Cloud」都在这里
- java utf8 简繁转换 类库_Java封装简体繁体(香港台湾)转换工具
- pytorch GPU
- Java SSM 与 SpringBoot
- java 屏幕键盘io
- Flask Jinja2模板
- php判断是否为数字_PHP知识点:从'xulei' == 0是否为真谈谈运算符===和==
- Kubernetes学习总结(4)——Kubernetes v1.20 重磅发布 | 新版本核心主题 主要变化解读
- Maven学习总结(43)——利用javadoc插件生成项目的API文档