题目
文章平均质量分 55
azure°
这个作者很懒,什么都没留下…
展开
-
[编程题]洗牌 牛客网
洗牌在生活中十分常见,现在需要写一个程序模拟洗牌的过程。 现在需要洗2n张牌,从上到下依次是第1张,第2张,第3张一直到第2n张。首先,我们把这2n张牌分成两堆,左手拿着第1张到第n张(上半堆),右手拿着第n+1张到第2n张(下半堆)。接着就开始洗牌的过程,先放下右手的最后一张牌,再放下左手的最后一张牌,接着放下右手的倒数第二张牌,再放下左手的倒数第二张牌,直到最后放下左手的第一张牌。接着把牌合并起来就可以了。 例如有6张牌,最开始牌的序列是1,2,3,4,5,6。首先分成两组,左手拿着1,2,3;右...原创 2021-03-09 22:28:04 · 107 阅读 · 0 评论 -
红与黑 牛客网
------题目描述有一间长方形的房子,地上铺了红色、黑色两种颜色的正方形瓷砖。你站在其中一块黑色的瓷砖上,只能向相邻的(上下左右四个方向)黑色瓷砖移动。请写一个程序,计算你总共能够到达多少块黑色的瓷砖。输入描述:输入包含多组数据。每组数据第一行是两个整数 m 和 n(1≤m, n≤20)。紧接着 m 行,每行包括 n 个字符。每个字符表示一块瓷砖的颜色,规则如下:“.”:黑色的瓷砖;“#”:白色的瓷砖;“@”:黑色的瓷砖,并且你站在这块瓷砖上。该字符在每个数据集合中唯一出现一次。输出描原创 2021-03-09 21:48:20 · 170 阅读 · 0 评论 -
牛客网 选择题
1.以下哪个ip不和10.11.12.91/28处于同一个子网(D)A 10.11.12.85/28B 10.11.12.88/28C 10.11.12.94/28D 10.11.12.97/28【解析】判断两个ip地址是否处于同一个子网的依据是子网掩码,计算方法为:将ip地址和子网掩码进行二进制转换,两者进行与运算,得出结果相同则处于同一个子网ip是由网络号和主机号组成的,前28位为网络号,后4位为主机号,位于同一子网只用区分主机号本题中ip地址前班部分都为10.11.12,因此只用关注后原创 2021-03-07 22:35:07 · 1388 阅读 · 0 评论 -
统计每个月兔子总数 C++ 牛客网
1.链接https://www.nowcoder.com/questionTerminal/1221ec77125d4370833fd3ad5ba723952.题目有一只兔子,从出生后第3个月起每个月都生一只兔子,小兔子长到第三个月后每个月又生一只兔子,假如兔子都不死,问每个月的兔子总数为多少?本题有多组数据。输入描述:输入int型表示month输出描述:输出兔子总数int型示例1输入9输出342.思路开始时,对每个月的兔子数量自己手动进行计算,找规律,然后发现其数列是: 1、原创 2020-12-13 23:07:46 · 276 阅读 · 0 评论 -
二进制插入 C++牛客网
1.来源https://www.nowcoder.com/questionTerminal/30c1674ad5694b3f8f0bc2de6f005490?toCommentId=1459882.题目给定两个32位整数n和m,同时给定i和j,将m的二进制数位插入到n的二进制的第j到第i位,保证n的第j到第i位均为零,且m的二进制位数小于等于i-j+1,其中二进制的位数从0开始由低到高。测试样例:1024,19,2,6返回:11003.代码方法1:class BinInsert {pub原创 2020-12-05 16:56:41 · 125 阅读 · 0 评论 -
查找组成一个偶数最接近的两个素数 C++ 牛客网
#include<iostream>#include<cmath>using namespace std;//思路:偶数num由两个素数组成,那么这两个素数一定是一个比num的一半小的,一个比num的一半大的数//从num/2开始向两边找到最近的两个素数,就是符合题目要求的bool isPrime(int n){ int i=0; for(int i=2;i<=sqrt(n);i++){ if(n%i==0)//如果能被除了1和它本身的原创 2020-12-05 16:47:24 · 206 阅读 · 0 评论 -
最近公共先祖 C++ 牛客网
1.题目链接:https://www.nowcoder.com/questionTerminal/70e00e490b454006976c1fdf47f155d92.题目将一棵无穷大满二叉树的结点按根结点一层一层地从左往右编号,根结点编号为1。现给定a,b为两个结点。设计一个算法,返回a、b最近的公共祖先的编号。注意其祖先也可能是结点本身。测试样例:2,3返回:13.代码class LCA {public: int getLCA(int a, int b) { //原创 2020-12-04 11:30:04 · 138 阅读 · 0 评论 -
求最大连续bit数 C++ 牛客网
1.题目链接:https://www.nowcoder.com/questionTerminal/4b1658fd8ffb4217bc3b7e85a38cfaf22.代码#include<iostream>using namespace std;int main(){ //思路:让n的每一位都和1相& 如果连续为1,则进行计数,如果不连续为1,则进行清零,每次计数发生变化,就进行相比,保留大的那个 int n=0; while(cin>>n)原创 2020-12-04 11:26:20 · 125 阅读 · 0 评论 -
井字棋 C++ 来源:牛客网
链接:https://www.nowcoder.com/questionTerminal/e1bb714eb9924188a0d5a6df2216a3d1?pos=19&mutiTagIds=639&orderByHotValue=0&questionTypes=000100题目:井字棋给定一个二维数组board,代表棋盘,其中元素为1的代表是当前玩家的棋子,0表示没有棋子,-1代表是对方玩家的棋子。当一方棋子在横竖斜方向上有连成排的及获胜(及井字棋规则),返回当前玩家是..原创 2020-12-03 20:24:05 · 288 阅读 · 0 评论 -
另类加法 题目来源:牛客网
题目来源:w.nowcoder.com/practice/e7e0d226f1e84ba7ab8b28efc6e1aebc题目描述给定两个int A和B。编写一个函数返回A+B的值,但不得使用+或其他算数运算符。测试样例:1,2返回:3思路两个数相异或的结果其实就是两个数相加(但其不进行进位)两个数相与的结果其实就是两个数相加后的进位的值异或:相异为1 相同为0与: 同时为1时为1eg:3->0011 9->10013^9->1010 sum3&.原创 2020-12-02 16:04:08 · 99 阅读 · 0 评论 -
Fibonacci数列 C++ 题目来源:牛客网
[编程题]Fibonacci数列Fibonacci数列是这样定义的:F[0] = 0F[1] = 1for each i ≥ 2: F[i] = F[i-1] + F[i-2]因此,Fibonacci数列就形如:0, 1, 1, 2, 3, 5, 8, 13, …,在Fibonacci数列中的数我们称为Fibonacci数。给你一个N,你想让其变为一个Fibonacci数,每一步你可以把当前数字X变为X-1或者X+1,现在给你一个数N求最少需要多少步可以变为Fibonacci数。输入描述:..原创 2020-11-30 18:37:44 · 176 阅读 · 0 评论