练习题
It's Q
比昨天更好
展开
-
整数中1出现的次数
整数中1出现的次数求出1-13的整数中1出现的次数,并算出100-1300的整数中1出现的次数?为此他特别数了一下1~13中包含1的数字有1、10、11、12、13因此共出现6次,但是对于后面问题他就没辙了。ACMer希望你们帮帮他,并把问题更加普遍化,可以很快的求出任意非负整数区间中1出现的次数(从1 到 n 中1出现的次数)暴力public int countNumberOf2(int n) { int count=0; if (n<1){原创 2020-07-08 17:14:09 · 132 阅读 · 0 评论 -
不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来
题目描述不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。输入描述:每一行包括两个字符串,长度不超过100。输出描述:可能有多组测试数据,对于每组数据,不借用任何字符串库函数实现无冗余地接受两个字符串,然后把它们无冗余的连接起来。输出连接后的字符串。示例1输入abc def输出abcdefimport java.util.Scanner;public class Main{ public static String fun(String str原创 2020-05-08 22:47:56 · 503 阅读 · 0 评论 -
数组中重复的数字
在一个长度为n的数组里的所有数字都在0到n-1的范围内。 数组中某些数字是重复的,但不知道有几个数字是重复的。也不知道每个数字重复几次。请找出数组中任意一个重复的数字。 例如,如果输入长度为7的数组{2,3,1,0,2,5,3},那么对应的输出是第一个重复的数字2。1.暴力: public boolean duplicate(int numbers[],int length,int [] du...原创 2020-04-27 22:44:57 · 104 阅读 · 0 评论 -
二维数组中的查找
在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。解法1:暴力枚举法:public class Solution { public boolean Find(int target, int [][] array) { for(in...原创 2020-04-27 17:37:43 · 111 阅读 · 0 评论 -
让奇数位于偶数之前
让奇数位于偶数之前奇数位于偶数之前作业内容调整数组顺序使得奇数位于偶数之前。调整之后,不关心大小顺序。思路:1.先设置一个大的循环,然后从前往后找到偶数和在从后边往前找起奇数的位置交换2.先利用循环在left<right的条件下不停的找array[i]%2==0,找到后退出循环3.再利用循环在left<right的条件下不停的找array[i]%2!=0,找到后退出循...原创 2020-04-17 23:32:12 · 173 阅读 · 0 评论 -
找出出现一次的数字
有一组数据,只有一个数字是出现一次,其他是两次,请找出这个数字。已知在程序中,a ^b ^b=a, 0 ^a=a,所以用result等于0的变量依次异或,最后result中存放的就是在这组数据中只出现一次的数字。/** * 找出出现一次的数字 * * 作业内容 * 有一组数据,只有一个数字是出现一次,其他是两次,请找出这个数字。 * @author Q * @create 2020...原创 2020-04-16 08:39:16 · 185 阅读 · 0 评论 -
使用JAVA计算二进制1的个数
使用JAVA计算二进制1的个数作业内容求一个整数,在内存当中存储时,二进制1的个数。import java.util.Scanner; /* * *@author Q * @create 2020-04-13-16:55 */public class count_1 { public static void main(String[] args) { Sca...原创 2020-04-15 15:42:12 · 537 阅读 · 0 评论 -
青蛙跳台阶算法,每次可以跳1级或两级,请问有n级台阶,有多少种算法,递归求解
青蛙跳台阶算法,每次可以跳1级或两级,请问有n级台阶,有多少种算法,递归求解1.当青蛙跳跳一个台阶时,只有1中跳法2.当青蛙跳跳2个台阶时,只有2中跳法3.在3个台阶时,因为青蛙只能一次跳1级或者两级因此在三个台阶的时候,第一次跳的时候有两种不同的跳法:3.1 第一次仅跳1级,此时的跳法有是 (3-1)级台阶事的跳法3.2 第一次仅跳2级,此时的跳法有是 (3-2)级台阶事的跳...原创 2020-04-13 22:37:15 · 5250 阅读 · 0 评论 -
将非负十进制整数n转换成b进制(其中b= 2~16)
题目:将非负十进制整数n转换成b进制(其中b= 2~16)要求:采用递归思想编程解决问题,并实现非递归方法。题目分析:(1)当转化的为16进制时,会出现字母。(2)采用递归和迭代解决该问题。(3)设置递归模型。函数设计:int trans(int n,int b,int i){ int temp=0; if(n==0){ for(int j=i-1;j>=0;j--...原创 2019-06-08 11:58:14 · 179 阅读 · 0 评论 -
24点 随机生成4个代表扑克牌牌面的数字字母,程序自动列出所有可能算出24的表达式
题目:24点游戏是经典的纸牌益智游戏。常见游戏规则:从扑克中每次取出4张牌。使用加减乘除,第一个能得出24者为赢。(其中,J代表11,Q代表12,K代表13,A代表1),按照要求编程解决24点游戏。基本要求: 随机生成4个代表扑克牌牌面的数字字母,程序自动列出所有可能算出24的表达式,用擅长的语言(C/C++/Java或其他均可)实现程序解决问题。 1.程序风格良好(使用自定义注...原创 2019-04-13 14:31:02 · 1878 阅读 · 0 评论 -
C++ RPG游戏角色的创建
题目几乎所有的RPG游戏(一种源自《龙与地下城》的游戏类型)在进入游戏时都会让用户自己来创建自己喜欢的角色。本次上机要求编写一个简化的创建游戏角色的程序。1.游戏角色应有的属性本题目要求的游戏角色应有以下属性:名字、性别、种族、职业、力量、敏捷、体力、智力、智慧、生命值和魔法值。名字:不超过50个字符。性别:可以选择男性和女性。种族:一共可选五个种族,人类、精灵、兽人、矮人和元素。...原创 2019-04-20 17:34:32 · 1099 阅读 · 0 评论 -
给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字
题目描述给定一系列正整数,请按要求对数字进行分类,并输出以下5个数字:A1 = 能被5整除的数字中所有偶数的和;A2 = 将被5除后余1的数字按给出顺序进行交错求和,即计算n1-n2+n3-n4…;A3 = 被5除后余2的数字的个数;A4 = 被5除后余3的数字的平均数,精确到小数点后1位;A5 = 被5除后余4的数字中最大数字。输入描述:每个输入包含1个测试用例。每个测试用例先给...原创 2019-03-28 20:34:04 · 4283 阅读 · 6 评论 -
给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C。
题目描述给定区间[-2的31次方, 2的31次方]内的3个整数A、B和C,请判断A+B是否大于C。输入描述:输入第1行给出正整数T(<=10),是测试用例的个数。随后给出T组测试用例,每组占一行,顺序给出A、B和C。整数间以空格分隔。输出描述:对每组测试用例,在一行中输出“Case #X: true”如果A+B>C,否则输出“Case #X: false”,其中X是测试用例的...原创 2019-03-27 22:33:33 · 1282 阅读 · 1 评论 -
求N个数的最小公倍数和最大公约数
求N个数的最小公倍数和最大公约数可采用的算法:1.枚举2.辗转相除3.更相减损术4.Stein算法分析得:求N个数的最小公倍数和最大公约数,需要循环调用算法函数,可以先求出两个数的最小公倍数,将这个最小公倍数和下一个数传给函数,就这样循环传参数再调用,即可求出这N个数的最小公倍数;最大公约数也是一样。枚举法先将输入的数从小到大依次排序(算法采用冒泡),选其中最小的数,从这个数的依次...原创 2019-03-23 14:19:11 · 406 阅读 · 0 评论 -
使用C++求解三天打鱼两天晒网
中国有句俗语叫“三天打鱼两天晒网”。某人从2010年1月1日起开始“三天打鱼两天晒网”,问这个人在以后的某一天中是“打鱼”还是“晒网”。用C++实现程序解决问题。根据题意可以将解题过程分为三步:1)计算从2010年1月1日开始至指定日期共有多少天;2)由于“打鱼”和“晒网”的周期为5天,所以将计算出的天数用5去除;3)根据余数判断他是在“打鱼”还是在“晒网”;若 余数为1,2,3,则他...原创 2019-03-01 22:22:47 · 662 阅读 · 0 评论