每日一题
Annnnie?
如果这里是美食帖,那么不论你是做什么的,也许都有吃东西的需求
展开
-
牛客练习Java之--树根
题目描述:数根可以通过把一个数的各个位上的数字加起来得到。如果得到的数是一位数,那么这个数就是数根;如果结果是两位数或者包括更多位的数字,那么再把这些数字加起来。如此进行下去,直到得到是一位数为止。比如,对于24 来说,把2 和4 相加得到6,由于6 是一位数,因此6 是24 的数根。再比如39,把3 和9 加起来得到12,由于12 不是一位数,因此还得把1 和2 加起来,最后得到3,这是一个一位数,因此3 是39 的数根。现在给你一个正整数,输出它的数根。输入描述:输入包含多组数据。每组数据数原创 2021-05-16 19:52:18 · 363 阅读 · 0 评论 -
牛客练习题--星际密码
星际密码时间限制:1秒 空间限制:32768K 代码长度限制 100 KB题目描述:星际战争开展了100年之后,NowCoder终于破译了外星人的密码!他们的密码是一串整数,通过一张表里的信息映射成最终4位密码。表的规则是:n对应的值是矩阵X的n次方的左上角,如果这个数不足4位则用0填充,如果大于4位的则只输出最后4位。|1 1|^n => |Xn …||1 0| |… …|例如n=2时,|1 1|^2 => |1 1| * |1 1| => |2 1||1 0原创 2021-05-16 19:48:03 · 303 阅读 · 0 评论 -
冒泡法排序
冒泡排序法public class 冒泡 { public static void main(String[] args) { int[] arr={6,5,4,7,3,8,2,9,1}; BubbleSort(arr); for(int i=0;i<arr.length;i++){ System.out.print(arr[i]+" "); } } public static void原创 2021-03-10 15:14:39 · 90 阅读 · 0 评论 -
汉诺塔 Java
汉诺塔public class 汉诺塔 { public static void main(String[] args) { int n=5; hanno(n,"X","Y","Z"); } private static void hanno(int n, String begin, String mid, String end) { if(n==1){ System.out.println(begin+"-原创 2021-03-10 15:13:56 · 86 阅读 · 0 评论 -
求两个数的最大值及最大值方法的重载
创建方法求两个数的最大值创建方法求两个数的最大值max2,随后再写一个求3个数的最大值的函数max3。 要求:在max3这个函数中,调用max2函数,来实现3个数的最大值计算public class Test { public static void main(String[] args) { int a=4; int b=3; int c=6; System.out.println(max2(a, b)); S原创 2021-03-10 15:12:56 · 2173 阅读 · 0 评论 -
调整数组顺序使得奇数位于偶数之前
找出数字所在位置下表public class 作业1 { public static void main(String[] args) { int[] arr = {1,2,3,10,5,6}; System.out.println(find(arr, 10)); } public static int find(int[] arr, int toFind) { for (int i = 0; i < arr.length; i原创 2021-03-10 15:11:58 · 78 阅读 · 0 评论 -
求斐波那契额数列第n项(递归与循环)
求斐波那契额数列第n项(递归法)public class Test { public static void main(String[] args) { System.out.println(fib(7)); } public static int fib(int n){ if(n<=0){ return 0; } if(n==1){ return 1;原创 2021-03-10 15:10:29 · 152 阅读 · 0 评论 -
找出只出现一次的数字
有一组数据,只有一个数字是出现一次,其他是两次,请找出这个数字。public class Test { public static void main(String[] args) { int[]arr={2,2,3,5,6,7,6,4,4,6,7}; int count; for(int i=0;i<arr.length;i++){ count=0; for(int j=0;j<arr.l原创 2021-03-10 15:10:00 · 81 阅读 · 0 评论 -
求阶乘并求阶乘的和
求阶乘public static int jiecheng(int m) { int q=1; for(int i=1;i<=m;i++){ q*=i; } return q; }求阶乘的和(求1!+2!+3!+4!+…+n!的和)public class Test { public static void main(String[] args) { System.out.p原创 2021-03-10 15:09:16 · 610 阅读 · 1 评论 -
Java方法的实现contains、indexOf、sum、replace、compareTo
Java方法的实现练习一、实现方法 contains, 能够判定字符串中是否包含子串二、实现方法 indexOf, 能够找出字符串子串存在的位置三、java实现一个方法 sum, 以数组为参数, 求数组所有元素之和四、实现方法 replace, 能够替换字符串中的某个部分五、实现方法 compareTo, 能够实现按照字典序比较字符串大小一、实现方法 contains, 能够判定字符串中是否包含子串public class Test5 { public static void main(原创 2021-03-02 17:25:31 · 493 阅读 · 0 评论 -
二维数组的二分查找
import java.util.Arrays;public class Test { public static void main(String[] args) { long[][] array = { {1, 2, 3, 4, 5}, {6, 7, 8, 9, 10}, {11, 12, 13, 14, 15} }; int rows = 3;.原创 2021-01-28 16:08:25 · 233 阅读 · 5 评论 -
面向对象的方法解决二分查找问题 Java代码
class Range { // 属性,区间的上限下标 + 区间的下限下标 // 这里选用左闭右闭 private final long[] array; private int lowIndex; private int highIndex; // 区间 array[lowIndex, highIndex] public Range(long[] array) { this.array = array; this.l原创 2021-01-27 23:16:51 · 226 阅读 · 2 评论 -
判断素数与打印素数 Java程序
打印 1 - 100 之间所有的素数给定一个数字,判定一个数字是否是素数import java.util.Scanner;public class 作业3_3 {//打印素数 public static void main(String[] args) { //1、给定一个数字,判定一个数字是否是素数。 Scanner sca=new Scanner(System.in); int n1=sca.nextInt();原创 2021-01-22 23:29:49 · 221 阅读 · 0 评论 -
按年龄段打印年龄代码Java
根据输入的年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)import java.util.Scanner;public class 作业3_1 {//少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上) public static void main(String[] args) { Scanner sca=new Scanner(System.in); int age=原创 2021-01-22 23:22:30 · 532 阅读 · 1 评论 -
模拟实现memcmp,memmove函数
模拟实现memcpyvoid * memcpy(void * dst, const void * src, size_t count){ void * ret = dst; assert(dst); assert(src); while (count--) { *(char *)dst = *(char *)src; dst = (char *)dst + 1; src = (char *)src + 1; } return(ret);}模拟实现memmovevoid原创 2020-12-07 14:26:35 · 236 阅读 · 2 评论 -
模拟实现字符串函数strlen,strcpy,strcmp,strcat,strstr
//计数器方式int my_strlen(const char * str){ int count = 0; while(*str) { count++; str++; } return count;}//不能创建临时变量计数器int my_strlen(const char * str){ if(*str == '\0') return 0; else return 1+my_strlen(str+1);}方式3://指针-指针的方式int my_s原创 2020-12-07 11:35:24 · 215 阅读 · 1 评论 -
字符串的旋转 C语言
字符串旋转的实现实现一个函数,可以左旋字符串中的k个字符。写一个函数,判断一个字符串是否为另外一个字符串旋转之后的字符串。实现一个函数,可以左旋字符串中的k个字符。ABCD左旋一个字符得到BCDAABCD左旋两个字符得到CDAB思路1:设计循环使其可以旋1次,然后让他执行n次void leftRound(char * src, int time){ int i, j, tmp; int len = strlen(src); time %= len; //长度为5的情况下,旋转6、11、原创 2020-11-30 21:00:52 · 251 阅读 · 1 评论 -
猜名次代码实现之C语言
5位运动员参加了10米台跳水比赛,有人让他们预测比赛结果:A选手说:B第二,我第三;B选手说:我第二,E第四;C选手说:我第一,D第二;D选手说:C最后,我第三;E选手说:我第四,A第一;比赛结束后,每位选手都说对了一半,请编程确定比赛的名次。思路1:考虑到一共五个人,直接模拟推理有些太难,计算机最擅长的遍历此时就会派上用场,将每个人从第1到第5来一遍,则一共会产生5^5种可能性,这个只需要一个5层循环即可搞定。但是这样会导致一些不期望出现的结果出现,因为我并没有查重,所以会出现两个人抢名次的原创 2020-11-23 11:27:23 · 599 阅读 · 2 评论 -
杨辉三角代码C语言
#include <stdio.h>#include <windows.h>#define N 14int main(){ int n=10; int i, j, k, a[N][N]; for (i = 1; i <= n; i++){ a[i][1] = a[i][i] = 1; } for (i = 3; i <= n; i++){ for (j = 2; j <= i - 1; j++){ a[i][j] = a[i - 1原创 2020-11-22 20:06:05 · 426 阅读 · 0 评论 -
二分法查找有序数列的数字C语言
#include <stdio.h>#include <windows.h>int main(){ int arr[] = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 12 }; int ans = 9; int left = 0; int right = sizeof(arr) / sizeof(arr[0])-1; while (left < right){ int mid = (left + right) / 2; if (a原创 2020-10-16 17:04:09 · 252 阅读 · 0 评论 -
c打印出乘法口诀表
#include <stdio.h>#include <windows.h>int main(){int i = 0;int j = 0;int s = 0;for (i = 1; i <= 9; i++){for (j = 1; j <= i; j++){s = i*j;printf("%d * %d = %d", i, j, s);}printf("\n");}system ("pause");return 0;}原创 2020-10-14 17:19:19 · 88 阅读 · 0 评论 -
求十个整数最大值
int main(){int i;int max;int a[10] = { 3, 4, 5, 6, 7, 8, 9, 44, 43, 42 };max = a[0];for (i = 0; i < 10; i++){ if (a[i]>max) { max = a[i]; }}printf("%d\n", max);system ("pause");return 0;}原创 2020-10-14 17:05:51 · 114 阅读 · 0 评论 -
计算1/1-1/2+1/3-1/4。。。 - 1/100 的值
#include <stdio.h>#include <windows.h>int main(){int i = 0;double sum = 0.0;int flag = 1;for (i = 1; i <= 100; i++){sum += flag*1.0/i;flag = -flag;}printf(" %1f\n",sum);system (“pause”);return 0;}原创 2020-10-14 16:48:30 · 222 阅读 · 0 评论 -
c打印100-200之间所有的的素数
#include <stdio.h>#include <windows.h>int main(){int a = 2;int i = 0;for (i = 100; i <= 200; i++){for (a = 2; a<i; a++){if (i%a == 0)break;}printf(" %d", i);}system (“pause”);return 0;}原创 2020-10-14 16:16:50 · 83 阅读 · 0 评论 -
打印1000-2000年间的所有闰年
打印1000-2000年间的闰年#include <stdio.h>#include <windows.h>int main(){int year=1000;for(year=1000;year<=2000;year++){if(year%40&&year%100!=0){printf("%d\n",year);}else if (year%4000){printf("%d\n",year);}}system (“pause”)原创 2020-10-14 11:34:55 · 259 阅读 · 1 评论