当前位置:网站首页>牛客网刷题训练(四)
牛客网刷题训练(四)
2022-07-31 00:15:00 【风起、风落】
博客主页:风起 风落的博客主页
欢迎关注点赞收藏留言
参考网站:牛客网
首发时间:2022年7月30日
你的收入跟你的不可替代成正比
如果觉得博主的文章还不错的话,请三连支持一下博主哦
给大家介绍一个求职刷题收割offer的地方点击网站
前言
1.BC106 上三角矩阵判定
描述
KiKi想知道一个n阶方矩是否为上三角矩阵,请帮他编程判定。上三角矩阵即主对角线以下的元素都为0的矩阵,主对角线为从矩阵的左上角至右下角的连线。
输入描述:
第一行包含一个整数n,表示一个方阵包含n行n列,用空格分隔。 (1≤n≤10)
从2到n+1行,每行输入n个整数(范围-231~231-1),用空格分隔,共输入n*n个数。
输出描述:
一行,如果输入方阵是上三角矩阵输出"YES"并换行,否则输出"NO"并换行。
示例1
输入:
3
1 2 3
0 4 5
0 0 6
输出:
YES
#include<stdio.h>
int main()
{
int n=0;
scanf("%d",&n);
int i=0;
int j=0;
int sum=1;
int sum2=0;
int arr[10][10]={
0};
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
scanf("%d",&arr[i][j]);
}
}
for(i=0;i<n;i++)
{
for(j=0;j<n;j++)
{
if(j<i)
{
sum2+=arr[i][j];
}
}
}
if(sum2==0)
{
printf("YES\n");
}
else
{
printf("NO\n");
}
}
这道题主要的意思是 :判断主对角线下的数是否为0
在这里寻找发现 在当i ,j坐标为 (1,0) (2,0) (2,1) 时恰好为0
其中每个j都小于i 将其所有相加再一起, 若为0就是, 否则就不是
2.BC98 序列中删除指定数字
描述
有一个整数序列(可能有重复的整数),现删除指定的某一个整数,输出删除指定数字之后的序列,序列中未被删除数字的前后位置没有发生改变。
数据范围:序列长度和序列中的值都满足 1 \le n \le 501≤n≤50
输入描述:
第一行输入一个整数(0≤N≤50)。
第二行输入N个整数,输入用空格分隔的N个整数。
第三行输入想要进行删除的一个整数。
输出描述:
输出为一行,删除指定数字之后的序列。
示例1
输入:
6
1 2 3 4 5 9
4
输出:
1 2 3 5 9
示例2
输入:
5
1 2 3 4 6
5
输出:
1 2 3 4 6
#define _CRT_SECURE_NO_WARNINGS
#include<stdio.h>
int main()
{
int N = 0;
scanf("%d", &N);
int i = 0;
int count = 0;
int arr[50] = {
0 };
for (i = 0; i < N; i++)
{
scanf("%d", &arr[i]);
}
int M = 0;
int j = 0;
scanf("%d", &M);
for (i = 0; i < N; i++)
{
if (arr[i] == M)
{
for (j = i; j < N; j++)
{
arr[j] = arr[j + 1];
}
count++;
i--;
}
}
for (i = 0; i < N - count; i++)
{
printf("%d ", arr[i]);
}
return 0;
}
我的想法就是从头遍历 若发现删除的数字 就把后面的数字往前赋值
但是通过调试发现两点失误
1.要删除的数字不止一个 所以我用一个count记录每次发现删除数字的个数 最后遍历时再减去
2.
为什么再输出时还有一个要删除的数字4
因为这里的两个要删除的数字4是连贯的, 所以在一次把把后面的数字往前赋值时
就把i传回到之前的位置了, 而出了循环后 i是要往后走的
所以如果进入发现删除的数字, 就把后面的数字往前赋值的这个循环 就把 i 往回走一个
3.BC115 小乐乐与欧几里得
描述
小乐乐最近在课上学习了如何求两个正整数的最大公约数与最小公倍数,但是他竟然不会求两个正整数的最大公约数与最小公倍数之和,请你帮助他解决这个问题。
输入描述:
每组输入包含两个正整数n和m。(1 ≤ n ≤ 109,1 ≤ m ≤ 109)
输出描述:
对于每组输入,输出一个正整数,为n和m的最大公约数与最小公倍数之和
示例1
输入:
10 20
输出:
30
示例2
输入:
15 20
输出:
65
#include<stdio.h>
int main()
{
long long m=0;
long long n=0;
long long r=0;
scanf("%lld%lld",&m,&n);
long p1=m;
long p2=n;
while(m%n)
{
r=m%n;
m=n;
n=r;
}
long long ret=(p1*p2)/n+n;
printf("%lld\n",ret);
return 0;
}
这里我也是报错了 一看这个预期输出的值 就是一个超级大的数
所以int时放不下的 改为long long就好了
4.BC117 小乐乐走台阶
描述
小乐乐上课需要走n阶台阶,因为他腿比较长,所以每次可以选择走一阶或者走两阶,那么他一共有多少种走法?
输入描述:
输入包含一个整数n (1 ≤ n ≤ 30)
输出描述:
输出一个整数,即小乐乐可以走的方法数。
示例1
输入:
2
输出:
2
示例2
输入:
10
输出:
89
#include<stdio.h>
int fib(int n)
{
if(n==1)
{
return 1;
}
if(n==2)
{
return 2;
}
return fib(n-1)+fib(n-2);
}
int main()
{
int n=0;
scanf("%d",&n);
int ret=fib(n);
printf("%d\n",ret);
return 0;
}
这道题别看是小乐乐的问题 其实就是青蛙跳台阶问题
也可以看作是斐波那契数 即 1 1 2 3 5 7 12 …
只有一个台阶时 只有一种跳法
二个台阶时, 可以 跳两个1 或者1个2 有两种跳法
三个台阶时,可以 跳3个 1 ,先1个1 后1个 2 , 先1个2后1个1 即三种跳法
所以斐波那契数的变种即 1 2 3 5 8…
正好第三种是第一种+第二种
总结
通过以上来自牛客网的练习题
相信会对学习c语言更有兴趣 ,让我们一起加油吧
不太自信的小伙伴可以看看这个训练
边栏推荐
- XSS相关知识
- 【深入浅出玩转FPGA学习13-----------测试用例设计1】
- 2D转换模块&&媒体查询
- registers (assembly language)
- MPI简谈
- Ukraine's foreign ministry: wu was restored to complete the export of food security
- [Meng Xin problem solving] Delete the Nth node from the bottom of the linked list
- HCIP Day 15 Notes
- Jetpack Compose学习(8)——State及remeber
- [In-depth and easy-to-follow FPGA learning 14----------Test case design 2]
猜你喜欢
How to solve types joiplay simulator does not support this game
Asser uses ant sword to log in
Bugku sql注入
Shell programming conditional statement test command Integer value, string comparison Logical test File test
ctfshow 文件包含
align-content、justify-content、align-items三个属性的作用和效果
【深入浅出玩转FPGA学习15----------时序分析基础】
joiplay模拟器rtp如何安装
数据库的严格模式
pytorch双线性插值
随机推荐
46.
从编译的角度来学作用域!
47. 【Pointers and Arrays】
ABC 261 F - Sorting Color Balls(逆序对)
How to Repair Word File Corruption
乌克兰外交部:乌已完成恢复粮食安全出口的必要准备
从两个易错的笔试题深入理解自增运算符
机器学习1一回归模型(二)
写了多年业务代码,我发现了这11个门道,只有内行才知道
Mysql体系化之JOIN运算实例分析
VSCode高效开源神器有哪些
Ukraine's foreign ministry: wu was restored to complete the export of food security
web漏洞之需要准备的工作
对象集合去重的方法
DNS resolution process [visit website]
Xss target drone training [success when pop-up window is realized]
Optimization of aggregate mentioned at DATA AI Summit 2022
【深入浅出玩转FPGA学习15----------时序分析基础】
How to solve types joiplay simulator does not support this game
MySQL数据库约束,表的设计