AL
little_girl_ly
这个作者很懒,什么都没留下…
展开
-
背包所有可能放置方法(C++)
回溯法求解,每次每个物品都有放与不放两种情况,每次放时要判断是否能放。#include<iostream>using namespace std;//回溯函数定义,rw 剩余容量,i第i个物品,v体积数组,number到第i个物品处有几种装法,n物品总数int backtrack(int rw, int i, int *v, int number, int n);//回溯法背包问题//...原创 2018-03-28 10:57:22 · 581 阅读 · 0 评论 -
句子逆序(C++)
将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符输入:I am a boy输出:boy a am I直接通过空格拆分成子字符串,然后逆序输出即可,代码如下:#include<iostream>#include<string>#include<cstr...原创 2018-04-29 16:31:19 · 984 阅读 · 0 评论 -
字符个数统计(C++)
编写一个函数,计算字符串中含有的不同字符的个数。字符在ACSII码范围内(0~127)。不在范围内的不作统计。例如:输入:abc输出:3除了每次判断是否在范围内,还要看是否与之前已经记录的字符重复,重复的字符,只记录一个。代码如下://字符个数统计(重复要去掉)#include<iostream>#include<string>using namespace std;int...原创 2018-04-29 15:53:53 · 15947 阅读 · 0 评论 -
提取不重复的整数(C++)
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。例如,输入:9876673输出:37689代码如下:#include<iostream>#include<string>using namespace std;int main() { string input; cin >> input; string output...原创 2018-04-29 15:40:36 · 1330 阅读 · 0 评论 -
合并表记录(C++)
数据表记录包含表索引和数值,请对表索引相同的记录进行合并,即将相同索引的数值进行求和运算,输出按照key值升序进行输出。输入:(index value)40 10 21 23 4输出:(index value)0 31 23 4参照之前的去重和排序的简易算法,可以直接得出结果:其中a[]可理解为a[index]=value#include<iostream>using na...原创 2018-04-28 21:41:51 · 530 阅读 · 0 评论 -
舍与入(C++)
C++ cmath自带3种方法:floor()//向上取整floor(10.5) = 10 floor(-10.5) = -11ceil()//向上取整 ceil(10.5) = 11 ceil(-10.5) =-10round()//四舍五入round(10.5)=11 round(10.4)=10 round(-2.1)=-2 round(-2.5)=-3实现原理如下:int ro...原创 2018-04-28 20:59:25 · 233 阅读 · 0 评论 -
求一个数的所有质因子(C++)
功能:输入一个正整数,按照从小到大的顺序输出它的所有质数的因子(如180的质数因子为2 2 3 3 5 ) 最后一个数后面也要有空格刚开始没有思路,后来查了下质因子的求法,可通过以下方法求出:#include<iostream>#include<string>using namespace std;string getResult(long input) { ...原创 2018-04-28 20:33:21 · 17124 阅读 · 3 评论 -
明明的随机数(C++)
明明想在学校中请一些同学一起做一项问卷调查,为了实验的客观性,他先用计算机生成了N个1到1000之间的随机整数(N≤1000),对于其中重复的数字,只保留一个,把其余相同的数去掉,不同的数对应着不同的学生的学号。然后再把这些数从小到大排序,按照排好的顺序去找同学做调查。请你协助明明完成“去重”与“排序”的工作。例如,输入5 8 9 1 2 2输出1 2 8 9我的思路是进行排序,然后输出的时候检测...原创 2018-04-28 20:17:56 · 1047 阅读 · 2 评论 -
密码验证合格程序(C++)
题目描述密码要求:1.长度超过8位 2.包括大小写字母.数字.其它符号,以上四种至少三种3.不能有相同长度超2的子串重复说明:长度超过2的子串输入描述:一组或多组长度超过2的子符串。每组占一行输出描述:如果符合要求输出:OK,否则输出NG示例1输入021Abc9000021Abc9Abc1021ABC9000021$bc9000输出OKNGNGOK代码如下:#include<...原创 2018-05-02 18:13:36 · 3281 阅读 · 0 评论 -
简单错误记录(C++)—— 一个坑
题目描述开发一个简单错误记录功能小模块,能够记录出错的代码所在的文件名称和行号。处理: 1、 记录最多8条错误记录,循环记录,对相同的错误记录(净文件名称和行号完全匹配)只记录一条,错误计数增加;2、 超过16个字符的文件名称,只记录文件的最后有效16个字符;3、 输入的文件可能带路径,记录文件名称不能带路径。输入描述:一行或多行字符串。每行包括带路径文件名称,行号,以空格隔开。输出描述:将所有的...原创 2018-05-02 17:37:47 · 872 阅读 · 0 评论 -
求解掷n个骰子和的所有情况及对应的概率(C++)
p[i][j]表示i个骰子,总和为j的概率,利用p[i][j]与p[i-1][j-1],p[i-1][j-2]...p[i-1][j-6]之间的关系进行求解。代码如下://计算n个骰子,掷出的和的所有概率//例如,输入:1//输出://1:0.166667//2:0.166667//3:0.166667//4:0.166667//5:0.166667//6:0.166667#in...原创 2018-05-02 15:46:57 · 2062 阅读 · 0 评论 -
坐标移动(C++)
题目描述开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S) + 数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10; A1A; $%$; YAD; 等。下面是一个简单的例子 如:A10;S20;W10;D30...原创 2018-05-01 17:01:37 · 2596 阅读 · 0 评论 -
购物单(C++)回溯法和动态规划双解法
题目描述王强今天很开心,公司发给N元的年终奖。王强决定把年终奖用于购物,他把想买的物品分为两类:主件与附件,附件是从属于某个主件的,下表就是一些主件与附件的例子:主件附件电脑打印机,扫描仪书柜图书书桌台灯,文具工作椅无如果要买归类为附件的物品,必须先买该附件所属的主件。每个主件可以有 0 个、 1 个或 2 个附件。附件不再有从属于自己的附件。王强想买的东西很多,为了不超出预算,他把每件物品规定了...原创 2018-05-01 16:12:26 · 1410 阅读 · 0 评论 -
求int在二进制存储时1的个数(C++)
输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数。输入:5输出:2代码如下:#include<iostream>#include<string>#include<cstring>using namespace std;int main() { int input; int output=0; cin >> inp...原创 2018-04-29 17:00:04 · 467 阅读 · 0 评论