[XDOJ]日常作业汇总(不定时更新)

这篇具有很好参考价值的文章主要介绍了[XDOJ]日常作业汇总(不定时更新)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

[XDOJ]日常作业汇总(不定时更新)

事先声明
1.该文章仅用于个人学习,谢绝未经本人同意和任何用于商业用途的搬运。
2.本人22级学生,学校题库内的题目可能会不定期更改题目要求,请各位参照答案的同学对照好题目要求,切莫直接抄袭。

[1~50]

2.数列分段

问题描述
给定一个整数数列,数列中连续相同的最长整数序列算成一段,问数列中共有多少段?
输入格式
输入的第一行包含一个整数n,表示数列中整数的个数。
第二行包含n个整数a1, a2, …, an,表示给定的数列,相邻的整数之间用一个空格分隔。
输出格式
输出一个整数,表示给定的数列有多个段。
样例输入
8
8 8 8 0 12 12 8 0
样例输出
5
样例说明
8 8 8是第一段,0是第二段,12 12是第三段,倒数第二个整数8是第四段,最后一个0是第五段。
评测用例规模与约定
1 ≤ n ≤ 1000,0 ≤ ai ≤ 1000。

#include <stdio.h>

int main(){
	int i=0, n, m, count=1;//i为序号,n为输入数字数目,m为移动读取赋值的量,count为总共数组数目
	scanf("%d", &n);
	int s[n];
	for(i; i<n; i++){
		scanf("%d", &s[i]);
	}
	do{ m=s[i];
		i++;
		count++;
	}while(m!=s[i+1]);
	printf("%d", count);
	return 0;
}

3.最小差值

问题描述
给定n个数,请找出其中相差(差的绝对值)最小的两个数,输出它们的差值的绝对值。
输入格式
输入第一行包含一个整数n。
第二行包含n个正整数,相邻整数之间使用一个空格分隔。
输出格式
输出一个整数,表示答案。
样例输入
5
1 5 4 8 20
样例输出
1
样例说明
相差最小的两个数是5和4,它们之间的差值是1。
样例输入
5
9 3 6 1 3
样例输出
0
样例说明
有两个相同的数3,它们之间的差值是0.
数据规模和约定
对于所有评测用例,2 ≤ n ≤ 1000,每个给定的整数都是不超过10000的正整数。

#include <stdio.h>

int main(){
	int i, n, min, max, result;
	scanf("%d", &n);
	int str[n], dif[n];
	for(i=0; i<n; i++){
		scanf("%d", &str[i]);
	}
	for(i=0; i<n; i++){
		if(str[i]<str[i+1]) dif[i]=str[i+1]-str[i];
		else dif[i]=str[i]-str[i+1];
		if(dif[i]<=dif[i+1]) result=dif[i];
		else result=dif[i+1];
	}
	printf("%d", result);
	return 0;
}

4.命令行选项

问题描述
  请你写一个命令行分析程序,用以分析给定的命令行里包含哪些选项。每个命令行由若干个字符串组成,它们之间恰好由一个空格分隔。这些字符串中的第一个为该命令行工具的名字,由小写字母组成,不含任何其他符号。在工具名字之后可能会包含若干选项(以减号”-”开头的字符串),还可能包含一些不是选项的参数(不以减号“-”开头的字符串)。
  请写一个程序分析给出的命令行,输出命令行包含的不重复选项(即,重复的选项只输出一次)。

输入格式
  输入是一个待处理的命令行,长度不超过 255 个字符。该命令行一定是若干个由单个空格分隔的字符串构成,每个字符串里只包含小写字母,数字和减号。
输出格式
  按照字母升序输出该命令行中用到的所有选项的名称,如果一个选项在命令行中出现了多次,只输出一次,如果命令行不包含任何选项,则输出no。
样例输入1
ls -a -l -a documents -b
样例输出1
-a -b -l
样例输入2
ls
样例输出2
no
样例输入
ls -w 10 -x -w 15
样例输出
-w -x

5.消除类游戏

问题描述
  消除类游戏是深受大众欢迎的一种游戏,游戏在一个包含有n行m列的游戏棋盘上进行,棋盘的每一行每一列的方格上放着一个有颜色的棋子,当一行或一列上有连续三个或更多的相同颜色的棋子时,这些棋子都被消除。当有多处可以被消除时,这些地方的棋子将同时被消除。
  现在给你一个n行m列的棋盘,棋盘中的每一个方格上有一个棋子,请给出经过一次消除后的棋盘。
  请注意:一个棋子可能在某一行和某一列同时被消除。
输入格式
  输入的第一行包含两个整数n, m,用空格分隔,分别表示棋盘的行数和列数。
  接下来n行,每行m个整数,用空格分隔,分别表示每一个方格中的棋子的颜色。颜色使用1至9编号。
输出格式
  输出n行,每行m个整数,相邻的整数之间使用一个空格分隔,表示经过一次消除后的棋盘。如果一个方格中的棋子被消除,则对应的方格输出0,否则输出棋子的颜色编号。
样例输入1
4 5
2 2 3 1 2
3 4 5 1 4
2 3 2 1 3
2 2 2 4 4
样例输出1
2 2 3 0 2
3 4 5 0 4
2 3 2 0 3
0 0 0 4 4
样例说明
  棋盘中第4列的1和第4行的2可以被消除,其他的方格中的棋子均保留。
样例输入2
4 5
2 2 3 1 2
3 1 1 1 1
2 3 2 1 3
2 2 3 3 3
样例输出2
2 2 3 0 2
3 0 0 0 0
2 3 2 0 3
2 2 0 0 0
样例说明
  棋盘中所有的1以及最后一行的3可以被同时消除,其他的方格中的棋子均保留。
评测用例规模与约定
所有的评测用例满足:1 ≤ n, m ≤ 30。

#include <stdio.h>

int main(){
	int i, j, n, m, a[30][30]={0};
	scanf("%d %d", &n, &m);
	for(i=0; i<n; i++){
		for(j=0; j<m; j++){
			scanf("%d", &a[i][j]);
		}
	}
	for(i=1; i<n-1; i++){
		for(j=1; j<m-1; j++){
				if(a[i][j]==a[i][j-1] && a[i][j]==a[i][j+1]){
					a[i][j]=0;
					a[i][j-1]=0;
					a[i][j+1]=0;
				}
				if(a[i][j]==a[i-1][j] && a[i][j]==a[i+1][j]){
					a[i][j]=0;
					a[i-1][j]=0;
					a[i+1][j]=0;
				}
		}
	}
	for(i=0; i<n; i++){
		for(j=0; j<m; j++){
			if(j!=m-1)
				printf("%d ", a[i][j]);
			else printf("%d\n", a[i][j]);
		}
	}
	return 0;
}

6.数字排序

  • 待完成

问题描述
给定n个整数,请计算每个整数各位数字和,按各位数字和从大到小的顺序输出。
输入格式
输入的第一行包含一个整数n,表示给定数字的个数。
第二行包含n个整数,相邻的整数之间用一个空格分隔,表示所给定的整数。
输出格式
输出多行,每行包含两个整数,分别表示一个给定的整数和它的各位数字和。按各位数字和递减的顺序输出。如果两个整数各位数字和相同,则先输出值较小的,然后输出值较大的。
样例输入
5
101 100 999 1234 110
样例输出
999 27
1234 10
101 2
110 2
100 1
评测用例规模与约定
1 ≤ n ≤ 1000,给出的数都是不超过10000的非负整数。

7.车牌限行_分支结构

问题描述
  受雾霾天气影响,某市决定当雾霾指数超过设定值时对车辆进行限行,假设车牌号全为数字,且长度不超过6位,限行规则如下:
(1)限行时间段只包括周一至周五,周六周日不限行;
(2)如果雾霾指数<200,不限行;
(3)如果200≤雾霾指数≤400,周1限行1和6,周2限行2和7,周3限行3和8,周4限行4和9,周5限行5和0;
(4)如果雾霾指数≥400,每天限行五个尾号的汽车,周1、3、5限行1,3,5,7,9,周2、4限行0,2,4,6,8。

现在给出星期几、雾霾指数和车牌号(int),判断该车牌号是否限行。
输入说明
scanf(“%d %d %d”,&a,&b,&c),第一个整数表示星期几(1~7,1表示周一,2表示周二,依次类推,7表示周日),第二个整数表示雾霾指数(0~600),第三个整数表示车牌号,整数之间用空格分隔。
输出说明
printf(“%d yes”,c%10)
printf(“%d no”,c%10)
输出为两个部分,第一部分为车牌最后一位数字,第二部分为限行情况,限行输出yes,不限行输出no。
输入样例
输入样例1
4 230 80801
输入样例2
3 300 67008

输出样例
输出样例1
1 no
输出样例2
8 yes

#include <stdio.h>

int main(){
	int week, index, car;
	scanf("%d %d %d", &week, &index, &car);
	if(index<200){
		printf("%d no", car%10);
	}
	if(200<=index && index<400){
		if((week==1 && ((car%10)==1 || (car%10)==6)) || (week==2 && ((car%10)==2 || (car%10)==7)) || (week==3 && ((car%10)==3 || (car%10)==8)) || (week==4 && ((car%10)==4 || (car%10)==9)) || (week==5 && ((car%10)==5 || (car%10)==0))){
			printf("%d yes", car%10);
		}
		else{
			printf("%d no", car%10);
		}
	}
	if(400<=index){
		if((((week==1) || (week==3) || (week==5)) && ((car%10==1) || (car%10==3) || (car%10==5) || (car%10==7) || (car%10==9))) || (((week==2) || (week==4)) && ((car%10==0) || (car%10==2) || (car%10==4) || (car%10==6) || (car%10==8)))){
			printf("%d yes", car%10);
		}
		else{
			printf("%d no", car%10);
		}
	}
	return 0;
}

9.计算球体质量

问题描述:
已知铁的比重是7.86(克/立方厘米),金的比重是19.3(克/立方厘米)。写一个程序,分别计算出给定直径的铁球与金球的质量,假定PI=3.1415926
输入说明:
输入两个整数,分别表示铁球与金球的直径(单位为毫米)
输出说明:
输出两个浮点数,分别表示铁球与金球的质量(单位为克),小数点后保留3位小数,两个浮点数之间用空格分隔
输入样例:
100 100
输出样例:
4115.486 10105.456
提示
用scanf输入,用printf输出,保留3位小数的格式控制字符为%.3f

#include <stdio.h>

int main(){
	int t_d, j_d;
	float t_m, j_m, Pl;
	Pl=3.1415926;
	scanf("%d %d", &t_d, &j_d);
	t_m=Pl*t_d*t_d*t_d/6000.000*7.860;
	j_m=Pl*j_d*j_d*j_d/6000.000*19.300;
	printf("%.3f %.3f", t_m, j_m);
	return 0;
}

10.温度转换

问题描述:
已知华氏温度到摄氏温度的转换公式为:摄氏温度= (华氏温度- 32)×5/9,写程序将给定的华氏温度转换为摄氏温度输出
输入说明:
只有一个整数,表示输入的华氏温度
输出说明:
输出一个表示摄氏温度的实数,小数点后保留2位有效数字,多余部分四舍五入
输入样例:
50
输出样例:
10.00
提示:
用scanf输入,用printf输出,保留2位小数的格式控制字符为%.2f

#include <stdio.h>

int main(){
	int f;
	float c;
	scanf("%d", &f);
	c=5.0/9.0*(f-32);
	printf("%.2f", c);
	return 0;
}

11.整数简单运算

问题描述:
编写程序,计算用户输入的两个整数的和、差、乘积(*)和商(/)。
输入格式:
输入两个整数,整数之间用空格分隔。
输出格式:
输出四个整数结果,分别表示和、差、积和商,每输出一个结果换行。
输入样例:
3 4
输出样例:
7
-1
12
0

#include <stdio.h>

int main()
{
	int a, b, sum, dif, pro, quo;//sum为和,dif为差,pro为积,quo为商
	
	scanf("%d %d", &a, &b);
	sum=a+b;
	dif=a-b;
	pro=a*b;
	quo=a/b;
	printf("%d\n", sum);
	printf("%d\n", dif);
	printf("%d\n", pro);
	printf("%d\n", quo); 
	return 0; 
}

15.A+B+C

问题描述:
通过键盘输入三个整数a,b,c,求3个整数之和。
输入说明:
三整形数据通过键盘输入,输入的数据介于-100000和100000之间,整数之间以空格、跳格或换行分隔。
输出说明:
输出3个数的和。
输入样例:
-6 0 39
输出样例:
33

#include <stdio.h>

int main(){
	int a, b, c;
	scanf("%d %d %d", &a, &b, &c);
	printf("%d", a+b+c);
	return 0;
}

16.字符输入输出

问题描述:
通过键盘输入5个大写字母,输出其对应的小写字母,并在末尾加上“!”。
输入说明:
5个大写字母通过键盘输入,字母之间以竖线“|”分隔。
输出说明:
输出5个大写字母对应的小写字母,之间无分隔,并在末尾加上‘!’。
输入样例:
H|E|L|L|O
输出样例:
hello!

#include<cstdio>

int main(){
	char a1, a2, a3, a4, a5;
	scanf("%c|%c|%c|%c|%c", &a1, &a2, &a3, &a4, &a5);
	a1+=32;
	a2+=32;
	a3+=32;
	a4+=32;
	a5+=32;
	printf("%c%c%c%c%c!", a1, a2, a3, a4, a5);
	return 0;
}

18.数字字符

问题描述:
通过键盘输入1个整数a(0<=a<=4),1个数字字符b(’0’<=b<=’5’),求a+b。
输入说明:
整形数据、数字字符通过键盘输入,输入的整形数据介于0和4之间,输入的数字字符介于‘0’和‘5’之间,二个输入数之间用“,”分隔。
输出说明:
分别以整数形式及字符形式输出a+b,输出的二个数之间用“,”分隔。
输入样例:
3,5
输出样例:
56,8

#include <stdio.h>

int main(){
	int a;
	char b;
	scanf("%d,%c", &a, &b);
	printf("%d,%c", a+b, a+b);
	return 0;
}

19.实数运算

问题描述:
通过键盘输入长方体的长、宽、高,求长方体的体积V(单精度)。
输入说明:
十进制形式输入长、宽、高,输入数据间用空格分隔。
输出说明:
单精度形式输出长方体体积V,保留小数点后3位,左对齐。
输入样例:
15 8.12 6.66
输出样例:
811.188

#include <stdio.h>

int main(){
	float a, b, c, V;
	scanf("%f %f %f", &a, &b, &c);
	V=a*b*c;
	printf("%.3f", V);
	return 0;
}

20.四则运算

问题描述:
输入两个整数和一个四则运算符,根据运算符计算并输出其运算结果(和、差、积、商、余之一)。注意做整除及求余运算时,除数不能为零。
输入说明:
使用scanf()函数输入两个整数和一个运算符,格式见输入样例。
输出说明:
输出使用printf()函数,格式见输出样例。
输入样例:
5%2
输出样例:
5%2=1

#include <stdio.h>

int main(){
	int a,b,x;
	char c;
	scanf("%d%c%d",&a,&c,&b);
	if(c=='+'){
		x=a+b;
	}
	if(c=='-'){
		x=a-b;
	}
	if(c=='*'){
		x=a*b;
	}
	if(c=='/'){
		x=a/b;
	}
	if(c=='%'){
		x=a%b;
	}
	printf("%d%c%d=%d",a,c,b,x);
	return 0;
}

21.数位输出

问题描述:
输入一个5位整数,求出其各数位数值,并按照从高位到低位的顺序输出,如:输入12345,输出为1 2 3 4 5。
输入说明:
输入一个五位正整数。
输出说明:
按数位从高到低依次输出,各数位之间以一个空格相分隔。
输入样例:
96237
输出样例:
9 6 2 3 7

#include<stdio.h>

int main(){
	int x, a, b, c, d, e;
	scanf("%d", &x);
	a = x/10000;
	b = (x/1000)%10;
	c = (x/100)%10;
	d = (x/10)%10;
	e = x%10;
	printf("%d %d %d %d %d", a, b, c, d, e);
	return 0;
}

27.阶梯电价1_分支结构

28.计算某月天数_分支结构

29.计算整数各位数字之和

30.完数

31.最大公约数

32.角谷定理

33.递归数列

问题描述
一个数列A定义如下:
A(1)=1,
A(2)=1/(1+A(1)),
A(3)=1/(1+A(2)),
……
A(n)=1/(1+A(n-1))。
定义一个函数function用来计算数列的第第n项的值,函数声明如下:
double function(int n);
输入说明
输入为1个正整数n,n<=10。
输出说明
函数输出数列A第n项的值,结果小数点后保留6位有效数字,多余部分四舍五入。
输入样例
5
输出样例
0.625000
提示
所有浮点数使用双精度浮点来运算!!!

#include <stdio.h>
#include <iostream>
using namespace std;

double function(int n){
	if(n==1)	return 1;
	else	return 1/(1+function(n-1));
}//答案仅需此段,其余为完整程序测试所用

int main(){
	int n;
	double result;
	cin>>n;
	result=function(n)*10*10*10*10*10*10/1/10/10/10/10/10/10;
	printf("%.6lf", result);
	return 0;
}

34.水仙数

35.歌德巴赫猜想

问题描述
有一种形式的Fibonacci数列定义如下:
F(0)=7,
F(1)=11,
F(n)=F(n-1)+F(n-2)(n>=2)。
按以下声明写一个函数fib
int fib(int n);
fib函数用来计算参数n对应的F(n),
fib(n)的返回值是F(n)。
输入说明
函数参数为一个整数n(0<=n<40)。
输出说明
函数返回值为整数,表示n对应的F(n)值。
输入样例
2
输出样例
18

#include <stdio.h>

int fib(int n){
	if(n==0)	return  7;
	else if(n==1)	return 11;
	else return fib(n-1)+fib(n-2);
}//答案仅需此段,其余为完整程序测试所用

int main(){
	int n;
	scanf("%d", &n);
	printf("%d", fib(n));
	return 0;
}

36.矩阵

37.排序2

38.回文数

39.马鞍点

40.等差数列

41.PM2.5

42.整除判断1

问题描述
判断正整数a能否被b整数,如果不能整除,输出商和余数
输入说明
输入两个正整数a和b(0<a, b<=10000),a和b之间用空格分隔。
输出说明
如果a能被b整除,输出yes,否则在同一行输出a除以b的商和余数,商和余数之间用空格分隔
输入样例
17 7
输出样例
2 3

#include <stdio.h>

int main(){
	int a, b, c, d;
	scanf("%d %d", &a, &b);
	if(a%b==0){
		printf("yes");
	}
	else{
		printf("%d %d", a/b, a%b);
	}
	return 0;
}

43.整数分析

44.斐波纳契数列素数判断

45.气温波动

46.折点计数

47.冰箱温度预测

问题描述
编写一个程序,用于预测冰箱断电后经过时间t(以小时为单位)后的温度T。已知计算公式如下所示
T=4t2/(t+2)-20
输入说明
输入两个整数h和m表示冰箱断电后经过的时间,h表示小时,m表示分钟
输出说明
输出冰箱断电后经过时间t(以小时为单位)后的温度T,保留两位小数
输入样例
2 0
输出样例
-16.00

#include <stdio.h>

int main(){
	int h,m;
	float T,t;
	scanf("%d %d",&h,&m);
	t=h+m/60.0;
	T=(4.0*t*t)/(t+2.0)-20.0;
	printf("%.2f",T);
	return 0;
}

48.除法计算器

49.完全平方数

50.选号程序

[50~100]

51.寻找最大整数_分支结构

52.字符处理_分支结构

53.abc组合

53.成绩分级1_分支结构

55.数列求和

56.直角三角形判断_分支结构

57.Fibonacci数列

60.简单程序

输入说明

输出说明
用C程序输出以下两行文字
C programming language is useful!
I like it very much.
输入样例

输出样例
C programming language is useful!
I like it very much.
提示
使用printf输出即可

#include <stdio.h>

int main(){
	printf("C programming language is useful!\nI like it very much.");
	return 0;
}

63.工资计算_分支结构

64.自然数分解

65.数字处理

66.平均数

67.查找

68.日期计算

69.0-1矩阵

70.Z字形扫描

71.相邻区域

72.寻找最长的行

问题描述
寻找若干行文本中最长的一行
输入说明
输入为多个字符串(每个字符串长度不超过100个字符),每个字符串占一行,输入的行为“*** end ***”时表示输入结束
输出说明
输出其中最长的一行长度后换行再输出最长行的内容,如果最长行不止一个,则输出其中的第一行。
输入样例
abce
abdf dlfd
end
输出样例
9
abdf dlfd

#include <stdio.h>
#include <string.h>

int main(){
	int n,max=0;
	char a[100],b[100];
	gets(a);
	if(gets(a)!="***end***"){
	n=strlen(a);
	if(n>max){
		max=n;
		strcpy(b, a);
	}
	}
	printf("%d\n%s", max, b);
	return 0;
}

73.字符串压缩

问题描述
  有一种简单的字符串压缩算法,对于字符串中连续出现的同一个英文字符,用该字符加上连续出现的次数来表示(连续出现次数小于3时不压缩)。
  例如,字符串aaaaabbbabaaaaaaaaaaaaabbbb可压缩为a5b3aba13b4。
请设计一个程序,将采用该压缩方法得到的字符串解压缩,还原出原字符串并输出。
输入说明
输入数据为一个字符串(长度不大于50,只包含字母和数字),表示压缩后的字符串
输出说明
在一行上输出解压缩后的英文字符串(长度不超过100),最后换行。
输入样例
a5b3aba13b4
输出样例
aaaaabbbabaaaaaaaaaaaaabbbb

方法一(转载自字符串压缩-xdoj):

#include <stdio.h>
#include <string.h>
using namespace std;

int main() {
	int i, k, num;
	char s[50], temp;
	gets(s);
	for (i = 0; i < strlen(s);) {
		printf("%c", s[i]);
		temp = s[i];
		i++;
		num = 0;
		while (s[i] >= '0' && s[i] <= '9') {
			num = num * 10 + (s[i] - '0');
			i++;
		}
		for (k = 0; k < num - 1; k++) {
			printf("%c", temp);
		}
	}
	return 0;
}

方法二(我的方法):
我的方法代码多一倍,发现真相的我眼泪落下了……

#include <stdio.h>
#include <iostream>
#include <ctype.h>
using namespace std;

int main(){
	char b='0', a[51]={'\0'}, alpha, str[101]={0};
	cin>>a;
	int i, j, jp, count=0, n;//jp=j_place
	n=strlen(a);
	for(i=0, j=0; i<n;){
		if(isalpha(a[i])){
			alpha=a[i];
			str[j]=alpha;
			i++;
			j++;
			jp=j;
		}

		if(isdigit(a[i])){
			if(isdigit(a[i+1])){
				count=(a[i]-'0')*10+(a[i+1]-'0');
				i+=2;
				for(j; j<=count+jp-2; j++){
				str[j]=alpha;
			}
			}
			else if(a[i]>='3' && a[i]<='9'){
				count=a[i]-'0';
				i++;
				for(j; j<=count+jp-2; j++){
				str[j]=alpha;
			}
			}
			else{
				for(j; j<=j;){
					str[j]=alpha;
					i++;
					j++;
				}
			}
			}
	}
	cout<<str<<endl;
	return 0;
}

75.灰度直方图

问题描述
  一幅m×n的灰度图像可以用一个二维矩阵表示,矩阵中的每个元素表示对应像素的灰度值。灰度直方图表示图像中具有每种灰度级的象素的个数,反映图像中每种灰度出现的频率。
  假设图像灰度为16级(灰度值从0-15),现给出一个矩阵表示的灰度图像,输出各级灰度的像素个数。
输入说明
  输入数据第一行为两个整数m 和n分别表示图像的宽度和高度(0<=m,n<=256),其后是n行数据,每行m个整数,分别表示图像各个像素的灰度值。
输出说明
  输出n行数据,每行数据由两个整数组成,分别表示灰度级和该灰度级像素个数,整数之间用空格分隔,灰度级输出顺序为从低到高,如果某灰度级像素个数为0,则不输出该灰度级的统计结果。
输入样例
5 4
0 1 0 2 8
3 4 8 5 9
12 14 10 6 7
1 15 3 6 10
输出样例
0 2
1 2
2 1
3 2
4 1
5 1
6 2
7 1
8 2
9 1
10 2
12 1
14 1
15 1

#include <stdio.h>

int main(){
	int m, n, i, j;
	scanf("%d %d", &m, &n);
	int a[m][n], b[16] = {0}, sum = 0, p;
	for(i = 0; i < m; i++){
		for(j = 0; j < n; j++){
			scanf("%d", &a[i][j]);
		}
	}
	for(p = 0; p < 16; p++){
		for(i = 0; i < m; i++){
			for(j = 0; j < n; j++){
				if(a[i][j] == p)	sum++;
			}
		}
		b[p] = sum;
		sum = 0;
		if(b[p] != 0)	printf("%d %d\n", p, b[p]);
	}
	return 0;
}

76.统计正整数的个数

79.求平均值

题目描述:
计算三个整数的平均值,结果保留两位小数。
输入格式:
共一行,包含三个整数,整数之间用空格分隔。
输出格式:
共一行,输出平均值,结果保留两位小数。
输入示例:
20 42 55
输出示例:
39.00

#include <stdio.h>

int main(){
	int a, b, c;
	float x;
	scanf("%d %d %d", &a, &b, &c);
	printf("%.2f", (a+b+c)/3.00);
	return 0;
}

80.字符统计

问题描述
  给出一个字符C和一行文字S,统计在这行文字S中字符C出现的次数。
  程序还需要支持大小写敏感选项:当选项打开时,表示同一个字母的大写和小写看作不同的字符;当选项关闭时,表示同一个字母的大写和小写看作相同的字符。
输入说明
  输入数据由两行构成。
  第一行包含一个字符C和一个数字n。字符C为大小或小写英文字母。数字n表示大小写敏感选项,当数字n为0时表示大小写不敏感,当数字n为1时表示大小写敏感。字符C和数字n之间用空格分隔。
  第二行为一个字符串S,字符串由大小写英文字母组成,不含空格和其他字符。字符串S长度不超过100。
输出说明
输出字符C在字符串S中出现的次数。
输入样例
样例1输入
L 1
HELLOWorld
样例2输入
L 0
HELLOWorld
输出样例
样例1输出
2
样例2输出
3

#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
#include <math.h>
using namespace std;

int main() {
	char c;
	int n;
	std::string s;
	cin >> c >> n;
	cin >> s;
	if (n == 0) {
		c = tolower(c);
		for (int i = 0; i < s.length(); i++) {
			s[i] = tolower(s[i]);
		}
	}
	int count = 0;
	for (int i = 0; i < s.length(); i++) {
		if (s[i] == c)
			count++;
	}
	cout << count;
	return 0;
}

81.字符串查找

问题描述
  给出一个字符串和多行文字,输出在这些文字中出现了指定字符串的行。
程序还需要支持大小写敏感选项:
  当选项打开时,表示同一个字母的大写和小写看作不同的字符;
  当选项关闭时,表示同一个字母的大写和小写看作相同的字符。
输入说明
  输入数据第一行包含一个字符串s,由大小写英文字母组成,长度不超过100。
  第二行包含一个数字,表示大小写敏感选项。当数字为0时表示大小写不敏感,当数字为1时表示大小写敏感。
  第三行包含一个整数n,表示给出的文字行数。
接下来n行,每行包含一个字符串,字符串由大小写英文字母组成,不含空格和其他字符。每个字符串长度不超过100。
输出说明
输出多行,每行包含一个字符串,按出现的顺序依次给出那些包含了字符串s的行。
输入样例
Hello
1
5
HelloWorld
HiHiHelloHiHi
GrepIsAGreatTool
HELLO
HELLOisNOTHello

输出样例
HelloWorld
HiHiHelloHiHi
HELLOisNOTHello

#include<stdio.h>
#include<string.h>

int main(){
	char str[10000][100], copy[10000][100];
	char str0[100], str1[100];
	int i, j, n, sense;
	scanf("%s", str0);
	scanf("%d %d", &sense, &n);
	for(i=0;i<n;i++){
		scanf("%s", str[i]);
	}
	if(!sense){
		strcpy(str1, str0);
		for(j=0; j<strlen(str1); j++){
			if(str1[j]>='A' && str1[j]<='Z')str1[j]+=32;
		}
		for(i=0; i<n; i++)strcpy(copy[i], str[i]);
		for(i=0; i<n; i++){
			for(j=0; j<strlen(copy[i]); j++){
				if(copy[i][j]>='A' && copy[i][j]<='Z')copy[i][j]+=32;
			}
		}
		for(i=0; i<n; i++){
			if(strstr(copy[i], str1)!=NULL)	puts(str[i]);
		} 
	}
	else {
		for(i=0; i<n; i++){
			if(strstr(str[i], str0)!=NULL)	puts(str[i]);		
		} 
	}
	return 0;
} 

82.密码强度

83.图像旋转

84.目录操作

问题描述
  在操作系统中,文件系统一般采用层次化的组织形式,由目录(或者文件夹)和文件构成,形成一棵树的形状。
  有一个特殊的目录被称为根目录,是整个文件系统形成的这棵树的根节点,在类Linux系统中用一个单独的 “/”符号表示。
  因此一个目录的绝对路径可以表示为“/d2/d3”这样的形式。
  当前目录表示用户目前正在工作的目录。为了切换到文件系统中的某个目录,可以使用“cd”命令。
  假设当前目录为“/d2/d3”,下图给出了cd命令的几种形式,以及执行命令之后的当前目录。
  xdoj 389,C语言,c语言

现在给出初始时的当前目录和一系列目录操作指令,请给出操作完成后的当前目录。
输入说明
  第一行包含一个字符串,表示当前目录。
  后续若干行,每行包含一个字符串,表示需要进行的目录切换命令。
  最后一行为pwd命令,表示输出当前目录
注意:

  1. 所有目录的名字只包含小写字母和数字,cd命令和pwd命令也都是小写。最长目录长度不超过200个字符。
  2. 当前目录已经是根目录时,cd … 和cd /不会产生任何作用

输出说明
输出一个字符串,表示经过一系列目录操作后的当前目录
输入样例
/d2/d3/d7
cd. .(两个“.”中间没有空格,由于Markdown编辑器语法限制只能备注)
cd /
cd /d1/d6
cd d4/d5
pwd
输出样例
/d1/d6/d4/d5

#include<stdio.h>
#include<string.h>

int main(){
	char a[201], b[201];
	gets(a);
	int i, j;
	while(1){
		gets(b);
		if(strcmp(b, "pwd")==0) break;
		else{
			if(strcmp(b, "cd /")==0){
				strcpy(a, "/"); 
			}
			else if(b[4]=='.'){
				if(strcmp(a, "/")!=0){
					for(i=strlen(a)-1; i>=0; i--){
						if(a[i]!='/') a[i]=0;
						else if(a[i]=='/' && strlen(a)>1){
							a[i]=0;
							break;
						}
					}
				}
			}
			else if(b[3]=='/' && b[4]!=0){
				for(i=0; i<strlen(a); i++)
					a[i]=1;
				for(i=3; b[i]!='\0'; i++){
					a[i-3]=b[i];
				}
				a[i+4]=0;
			}
			else{
				if(strcmp(a, "/")==0){
					j=1;
					for(i=3; b[i]!='\0'; i++, j++){
						a[j]=b[i];
					}
					a[j]='\0';
				}
				else{
					i=strlen(a);
					a[i]='/';
					i++;
					for(j=3; b[j]!='\0'; i++, j++){
						a[i]=b[j];
					}
					a[++i]='\0';
				}
			} 
		}
	}
	puts(a);
	return 0;
 }

85.字符串相似度

问题描述
  最长公共子串指给定的两个字符串之间最长的相同子字符串(忽略大小写),最长公共子串长度可用来定义字符串相似度。
  现给出两个字符串S1和S2,S1的长度为Len1,S2的长度为Len2,假设S1和S2的最长公共子串长度为LCS,则两个字符串的相似度定义为2LCS/(Len1+Len2)。
  例如:S1=”App”,S2=”apple”,S1长度为3,S2长度为5,它们的最长公共子串为”App”,长度为3,则相似度为2
3/(3+5)=0.75。
  现给出两个字符串,请计算它们的相似度结果保留3位小数。
输入说明
输入为两行,分别表示两个字符串S1和S2,每个字符串长度不超过100个字符,所有字符均为可打印字符,包括大小写字母,标点符号和空格。
输出说明
输出两个字符串的相似度,结果四舍五入保留3位小数。
输入样例
App
Apple
输出样例
0.750

#include<stdio.h>
#include<string.h>
#include<math.h>

int main(){
	char s1[101], s2[101], t[101];
	int i, j;
	float len1, len2, max=0;
	int a[100][100]={0};
	float similar;
	gets(s1);
	gets(s2);
	len1=strlen(s1);
	len2=strlen(s2);
	for(i=0; i<len1; i++){
		for(j=0; j<len2; j++){
			if(s1[i]==s2[j]||abs(s1[i]-s2[j])==32){
				if(i!=0 && j!=0)
				a[i][j]=a[i-1][j-1]+1;
				else a[i][j]=1;
			}
		}
	}
	for(i=0; i<len1; i++){
		for(j=0; j<len2; j++){
			if(a[i][j]>max) max=a[i][j];
		}
	}
	similar=2.0*max/(len1+len2);
	printf("%.3f", similar);
	return 0;
 } 

86.画图

问题描述
  在一个定义了直角坐标系的纸上,画一个(x1,y1)到(x2,y2)的矩形,指将横坐标范围从x1到x2,纵坐标范围从y1到y2之间的区域涂上颜色。
  下图给出了一个画了两个矩形的例子。第一个矩形是(1,1) 到(4, 4),用绿色和紫色表示。第二个矩形是(2, 3)到(6, 5),用蓝色和紫色表示。
  图中,一共有15个单位的面积被涂上颜色,其中紫色部分被涂了两次,但在计算面积时只计算一次。在实际的涂色过程中,所有的矩形 都涂成统一的颜色,图中显示不同颜色仅为说明方便。给出所有要画的矩形,请问总共有多少个单位的面积被涂上颜色。
输入说明
输入的第一行包含一个整数n,表示要画的矩形的个数,1<=n<=100。
接下来n行,每行4个非负整数,分别表示要画的矩形的左下角的横坐标与纵坐标,以及右上角的横坐标与纵坐标。0<=横坐标、纵坐标<=100。
输出说明
输出一个整数,表示有多少个单位的面积被涂上颜色。
输入样例
2
1 1 4 4
2 3 6 5
输出样例
15

在这里插入代码片

87.跳一跳

88.ISBN号码

题目描述:
  每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如 “x-xxx-xxxxx-x” ,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如 0-670-82162-4 就是一个标准的ISBN码。
  ISBN码的首位数字表示书籍的出版语言,例如 0 代表英语;
  第一个分隔符 “-” 之后的三位数字代表出版社,例如 670 代表维京出版社;
  第二个分隔之后的五位数字代表该书在出版社的编号;
  最后一位为识别码。识别码的计算方法如下:
  首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。
  例如ISBN号码 0-670-82162-4 中的识别码 4 是这样得到的:
  对 067082162 这9个数字,从左至右,分别乘以1,2,…,9,再求和,即0×1+6×2+……+2×9=158,然后取 158 mod (即%取余)11 的结果 4 作为识别码。
  编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出 “Right” ;如果错误,则输出正确的ISBN号码。
输入格式:
输入只有一行,是一个字符序列,表示一本书的ISBN号码(保证输入符合ISBN号码的格式要求)。
输出格式:
输出一行,假如输入的ISBN号码的识别码正确,那么输出 “Right” ,否则,按照规定的格式,输出正确的ISBN号码(包括分隔符 “-” )。
示例:
样例输入1
0-670-82162-4
样例输入2
0-670-82162-0

输出样例
样例输出1
Right
样例输出2
0-670-82162-4

#include <stdio.h>
#include <stdlib.h>

int main(){
	int i, num = 0;
	char s[11] = {'0'};
	for(i = 0; i < 10;){
		s[i] = getchar();
		if(s[i] != '-')	i++;
	}/*这里我最开始写的代码出错了一直找不到原因
	初始错误代码:
	while(getchar() != '-'){
		for(i = 0; i < 10; i++){
			s[i] = getchar();
		}
	}
	运行时发现按回车键没有用,调试时发现卡在 while 那里一直不往下走,问了同学才知道 while 括号里的 getchar() 和 
	for 循环里的 getchar() 读取的分别是第一个键入和第二个键入……*/
	for(i = 0; i < 9; i++){
		num += (s[i] - '0') * (i + 1);
	}
	num %= 11;
	if(num == (s[9] - '0'))
		printf("Right");
	else	printf("%c-%c%c%c-%c%c%c%c%c-%d", s[0], s[1], s[2], s[3], s[4], s[5], s[6], s[7], s[8], num);
	return 0;
}

89.计算球的体积

题目描述:
输入球的半径,计算并输出球的体积,假定pi=3.14,结果保留两位小数。
输入格式:
共一行,输入球体半径,两位小数。
输出格式:
共一行,输出球体体积,结果保留两位小数。
示例:
输入:5.50
输出:696.56

#include <stdio.h>

int main(){
	float r, pi, v;
	pi=3.14;
	scanf("%f", &r);
	printf("%.2f", 4.00/3.00*pi*r*r*r);
	return 0;
}

90.求三位整数各位之和

题目描述:
输入一个三位数整数,求其百位、十位和个位数字之和。
输入格式:
共一行,输入一个三位整数。
输出格式:
共一行,输出一个整数。
示例:
输入:128
输出:11

#include <stdio.h>

int main(){
	int x, y;
	scanf("%d", &x);
	printf("%d", x/100+x/10%10+x%10);
	return 0;
}

91.求三角形面积

题目描述:
  输入三角形的三边长,计算三角形的面积,结果保留两位小数。
  边长分别为a,b,c,三角形的面积公式为s=sqrt(p(p-a)(p-b)(p-c)),其中p=(a+b+c)/2。
输入格式:
共一行,输入三个数,保留两位小数,用空格隔开各个数据。
输出格式:
共一行,输出面积,结果保留两位小数。
示例:
输入:3.00 4.00 5.00
输出:6.00

#include <stdio.h>
#include <math.h>

int main(){
	float a, b, c, p;
	scanf ("%f %f %f", &a, &b, &c);
	p=(a+b+c)/2.00;
	printf("%.2f", pow(p*(p-a)*(p-b)*(p-c), 0.50));
	return 0;
}

92.工资发放

题目描述:
公司财务要发工资现金,需要提前换取100元、50元、20元、10元、5元和1元的人民币,请输入工资数,计算张数最少情况下,各自需要多少张。
输入格式:
共一行,输入一个正整数。
输出格式:
共一行,分别是100、50、20、10、5、1元面额的张数,用空格隔开各个数据。
示例:
输入:1258
输出:12 1 0 0 1

#include <stdio.h>

int main(){
	int n, a, b, c, d, e, f, x;
	scanf("%d", n);
	a=n/100;
	x=n%100;
	if(x>=50) b=1;
	else b=0;
}

93.整数比较1_分支结构

94.整数比较2分支结构

97.输出26个英文字母

98.成绩分级2_分支结构

99.阶梯电价2_分支结构

100.三角形判别

描述
已知三角形任意两边之和大于第三边,给出三个正整数a,b,c,,请判断能否构成一个三角形,并输出相应结果。
输入说明
输入数据为同一行上的3个整数a,b,c(0 < a,b,c < 1000),整数之间用空格分隔。
输出说明
如果输入的三个整数能够构成一个三角形,输出该三角形周长,否则输出No
输入样例1
3 3 2
输入样例2
1 1 5
输出样例1
8
输出样例2
No
提示
能够构成一个三角形,输出该三角形周长,否则输出No

#include <stdio.h>

int main(){
	int a, b, c, l;
	scanf("%d %d %d", &a, &b, &c);
	if(a+b>c && a+c>b && b+c>a)
	printf("%d", a+b+c);
	else
	printf("No");
	return 0;
}

[101~150]

101.四位密码器

110.判断奇偶性

题目描述:
编写程序:输入一个正整数,判断该数的奇偶性,输出判断的结果(偶数/奇数)。
输入格式:
输入一个正整数。
输出格式:
输出“偶数”或“奇数”。
示例:
输入:5
输出:奇数

#include<stdio.h>

int main(){
	int a;
	if(a%2==0)
	printf("偶数");
	else
	printf("奇数");
	return 0;
}

111.整除判断2

题目描述:
编写程序,输入一个正整数,判断是否能被5和7同时整除,若可以,则输出yes;否则输出no。
输入格式:
输入一个正整数。
输出格式:
输出“yes”或“no”。
示例:
输入:35
输出:yes

#include <stdio.h>

int main(){
	int a;
	scanf("%d", &a);
	if(a%5==0 && a%7==0)
	printf("yes");
	else
	printf("no");
	return 0;
}

112.分段函数1_分支结构

113.出租车计价

116.阶梯电价控制

125.利率计算

问题描述:
假如我国国民生产总值的年增长率为9%,计算10年后我国国民总值与现在相比增长多少百分比。计算公式为p=(1+r)n,r为增长率,n为年数,p为与现在相比的倍数。
输入说明:
输入两个浮点数,分别表示年增长率和年数,两个浮点数之间用空格分隔。
输出说明:
输出一个浮点数,表示与现在相比的倍数,小数点后保留2位小数。
输入样例:
0.09 10
输出样例:
2.37

#include <stdio.h>
#include <math.h>

int main(){
	float r, n, p;//r为增长率,n为年数,p为与现在相比的倍数
	scanf("%f %f", &r, &n);
	p=pow((1+r), n);
	printf("%.2f", p);
	return 0;
}

126.购房贷款计算

问题描述:
购房从银行贷了一笔款d,准备每月还款额为P,月利率为r,计算多少月能还清。(设d为300000元,p为6000元,r为1%,对求得的月份取小数点后一位,对第2位按四舍五入处理)
提示:
计算还清月数m的公式如下:xdoj 389,C语言,c语言

也可以将公式改写为:xdoj 389,C语言,c语言

输入说明:
输入三个浮点数,分别表示贷款,每月还款额与月利率,三个浮点数之间用空格分隔。
输出说明:
输出以个浮点数,表示还清贷款的月数,小数点后保留2位小数。
输入样例:
300000 6000 0.01
输出样例:
69.66

#include <stdio.h>
#include <math.h>

int main(){
	float d, p, r, m;//d为贷款,p为还款,r为月利率,m为月数
	scanf("%f %f %f", &d, &p, &r);
	m=log(p/(p-d*r))/log(1+r);
	printf("%.2f", m);
	return 0;
}

139.字符加密

问题描述:
请编程序将“China”译成密码,密码规律是:用原来字母后面第四个字母代替原来的字母。例如“A”后面的第四个字母是“E”,用“E”代替“A”,因此,“China”应译为“Glmre”。
输入说明:
用赋初值的方法使c1,c2,c3,c4,c5这五个变量的值分别为‘C’,‘h’,‘i’,‘n’,‘a’,字符之间以空格分隔。
输出说明:
经过运算,使c1,c2,c3,c4,c5分别变成‘G’,‘l’,‘m’,‘r’,‘e’。用printf函数输出这五个字符
输入样例:
C h i n a
输出样例:
Glmre

#include <stdio.h>

int main(){
	char c1, c2, c3, c4, c5;
	scanf("%c %c %c %c %c", &c1, &c2, &c3, &c4, &c5);
	printf("%c%c%c%c%c", c1+4, c2+4, c3+4, c4+4, c5+4);
	return 0;
}

146.英文表示数字_分支结构

147.求奇数的和

149.求交错序列前N项和

150.分段函数2_分支结构

[151~200]

151.利润计算_分支结构

155.阶乘之和—双层循环

156.数字个数统计

157.自然数求和

159.阶乘运算

161.数字个数统计2

162.矩阵相乘

163.数值求和—二维数组练习

164.转换排序—数组中的元素排序练习

165.最值位置—数组数列元素查询练习

176.中间数

177.累加和校验

183.最大公约数和最小公倍数

185.迭代法求根

189.小球下落问题

190.矩阵对角线求和

191.密码编译

192.数组逆序排列

193.歌唱比赛

196.输出金字塔

200.数组元素平移

[201~250]

201.后项除以前项

204.单词统计—字符数组练习

205.金字塔打印

206.字符删除—字符数组练习

207.单词排序—字符数组练习

215.字符逆序排放

219.素数判断

221.字符串元素统计

227.字符串查找

228.字符串筛选

229.字符串连接

230.调用函数求素数

240.整数转换为字符串

241.十六进制转换为十进制

244.单词排序

题目描述:
定义一个二维字符数组str[10][20],行号表示单词序号,列号表示单词最大长度,输入一个正整数N(N≤10),表示单词数,使用函数wd_sort()完成单词的排序,按字母顺序从小到大排列单词
输入描述:
输入一个正整数N和一个二维字符数组str,字母为小写,行号表示单词序号,列号表示单词最大长度。
输出描述:
格式输出:排序后的单词之间用换行分隔。
输入样例:
3
word
fish
egg
输出样例:
egg
fish
word
提示:
使用strcmp()、strcpy()和strlen()函数,头文件string.h。

#include<stdio.h>
#include<string.h>

int main(){
	char str[10][20];
	char trans[100];
	int i, j, n, t;
	scanf("%d", &n);
	for(i=0; i<n; i++){
		scanf("%s", &str[i]);
	}
	for(i=0; i<n; i++){
		for(j=0; j<n-1; j++){
			if(strcmp(str[j], str[j+1])>0){
				for(t=0; t<20; t++)
				trans[t]=str[j][t];
				for(t=0; t<20; t++)
				str[j][t]=str[j+1][t];
				for(t=0; t<20; t++)
				str[j+1][t]=trans[t];
				
			}
		}
	}
	for(i=0; i<n; i++){
		puts(str[i]);
		printf("\n");
	}
	return 0;
}

249.分解质因数

[251~300]

298.最大值与最小值_分支结构

299.奖金计算_分支结构

300.位数判断

[301~350]

301.亲和数

302.质数求和

[351~400]

374.课堂练习-沸水降温曲线

描述:
沸腾的水(100℃)在室温下温度随时间变化的曲线如图所示,给出时间,计算
水的温度
xdoj 389,C语言,c语言

输入:
第一行为两个整数 m(m[0,100]),s(s∈[0,59]),分别表示降温时间的分钟数和秒数
输出:
输出一个小数,表示输入时间对应的水的温度,温度保留 1 位小数。
输入样例:
5 30
输出样例:
72.5文章来源地址https://www.toymoban.com/news/detail-738756.html

#include<stdio.h>

int main(){
	int m,s;
	float t,c;
	scanf("%d%d", &m, &s);
	t = m+(s*1.0/60);
	if(t>=0 && t<=10){
		c = 100-5*t;
	}
	else if(t>10 && t<=30){
		c = 50-(t-10);
	}
	else if(t>30 && t<=50){
		c = 30-((t-30)*1.0)/2;
	}
	else{
		c = 20;
	}
	printf("%.1f", c);
	return 0;
}

375.课堂练习题2-温度统计

378.正整数的最优分解

381.小中大

382.图像旋转-2021

384.种苹果

385.报数游戏

到了这里,关于[XDOJ]日常作业汇总(不定时更新)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • XDOJ例题及答案第七更 计算整数各位数字之和简单程序奖金计算角谷定理阶乘运算阶乘之和阶梯电价计费阶梯电价计算 金字塔打印矩阵矩阵对角线求和矩阵求和累加和校验利率计算 利润计算螺旋填数马鞍点

    目录 计算整数各位数字之和 简单程序 奖金计算 角谷定理 阶乘运算 阶乘之和 阶梯电价计费 阶梯电价计算 金字塔打印 矩阵 矩阵对角线求和 矩阵求和 累加和校验 利率计算 利润计算 螺旋填数 马鞍点

    2024年02月05日
    浏览(103)
  • Flink checkpoint操作流程详解与报错调试方法汇总,增量checkpoint原理及版本更新变化,作业恢复和扩缩容原理与优化

    本文主要参考官方社区给出的checkpoint出错类型和种类,以及查找报错的方法。 主要分为两种 Checkpoint Decline 与 Checkpint Expire 两种类型 下面分开讨论 从业务上来讲,Checkpoint 失败可能有较多的影响。 Flink 恢复时间长,会导致服务可用率降低。 非幂等或非事务场景,导致大量业

    2024年02月22日
    浏览(47)
  • 开源大语言模型(LLM)汇总(持续更新中)

    随着ChatGPT的火爆,越来越多人希望在本地运行一个大语言模型。为此我维护了这个开源大语言模型汇总,跟踪每天不发的大语言模型和精调语言模型。 我将根据个模型采用的基础大模型进行分类,每个大模型下列出各派生模型。 斯坦福Alpaca:一种指令遵从型 LLaMA 模型。 🏠

    2023年04月17日
    浏览(41)
  • 日常开发小汇总(3)js类型判断

    1.typeof 能判断出字符串、数字、方法和undefined,array、null、object判断不出 instanceof 如 a instanceof b, 判断a的原型链上是否有b的原型 Object.getPrototypeOf() 返回参数的隐式原型 ,感觉有些鸡肋 Object.getPrototypeOf ([]) === Array.prototype //true Object.prototype.toString.call() 这里解释一下为什么Ob

    2024年02月09日
    浏览(40)
  • Mac日常随笔(持续更新)

    目录 日常系列 Mac一些快捷键 批量改文件名 Mac强制关闭程序 开发系列 打开Mac命令行 IDea快捷键 选择性截图 Command + Shift + 4 截取整个屏幕 Command + Shift + 3 录屏 Command + Shift + 5 强制退出 Command + Option+ Esc 不过还是微信截图更为方便,可以编辑图片,直接就是已复制状态。 选中所

    2024年02月22日
    浏览(42)
  • 日常刷题 无代码(长期更新

    1401F 线段树题 我们可以考虑为反转 子树 1579g 可以二分 因为会有负数 所以我会把 开始的位置 为 0-mid 然后dp 459e 边权从小到大加入 没有后效性 直接dp 372b 前缀和 1151e 点=边+连通块 见了两次了 这下记住了 505C 直接dp复杂度不对 我们优化一下 dp[i][j] 表示目前到了i 和d偏移了j的

    2024年02月08日
    浏览(37)
  • [LeetCode][Python]389. 找不同

    正确的思路: 计数方法:对每个字母出现次数进行了统计 错误的思路: 按位比对 错误解法

    2024年02月04日
    浏览(31)
  • 日常开发小点汇总(2)之防止网络不佳,获取不到css,页面logo做法

    防止网络不佳,获取不到css,页面logo做法 当未加载出css样式的时候,页面显示 加载完css之后

    2024年02月09日
    浏览(37)
  • Linux/Ubuntu 的日常升级和安全更新,如何操作?

    我安装的是Ubuntu 20.04.6 LTS的Windows上Linux子系统版本,启动完成后显示:  Welcome to Ubuntu 20.04.6 LTS (GNU/Linux 5.15.90.4-microsoft-standard-WSL2 x86_64)  * Documentation:  https://help.ubuntu.com  * Management:     https://landscape.canonical.com  * Support:        https://ubuntu.com/advantage   System information as of S

    2024年02月12日
    浏览(38)
  • 故障012:定时备份作业-6007悬案

    DM技术交流QQ群:940124259 诡异的现象总是伴随着隐藏的功能被打开,可能耽误你很长时间找原因,可费劲!! 本案例发生很久,题材准备已久,迟迟未准备文字描述,今天专门整理成文,同大家分享曲折的过程。 本次产生的问题是定时备份作业总是执行失败,备份路径下只存

    2024年02月12日
    浏览(26)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包