自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(58)
  • 收藏
  • 关注

原创 外星日历(大数取余)

1、题目某星系深处发现了文明遗迹。他们的计数也是用十进制。他们的文明也有日历。日历只有天数,没有年、月的概念。有趣的是,他们也使用了类似“星期”的概念,只不过他们的一个星期包含了9天,为了方便,这里分别记为: A,B,C…H,I从一些资料上看到,他们的23日是星期E他们的190日是星期A他们的343251日是星期I令人兴奋的是,他们居然也预见了“世界末日”的那天,当然是一个很大很大的数字651764141421415346185请你计算一下,这遥远的一天是该文明的星期几?你需要

2021-04-09 11:17:34 328

原创 AcWing1205. 买不到的数目(C++算法)

1、题目:小明开了一家糖果店。他别出心裁:把水果糖包成4颗一包和7颗一包的两种。糖果不能拆包卖。小朋友来买糖的时候,他就用这两种包装来组合。当然有些糖果数目是无法组合出来的,比如要买 10 颗糖。你可以用计算机测试一下,在这种包装情况下,最大不能买到的数量是17。大于17的任何数字都可以用4和7组合出来。本题的要求就是在已知两个包装的数量时,求最大不能组合出的数字。输入格式两个正整数 n,m,表示每种包装中糖的颗数。输出格式一个正整数,表示最大不能买到的糖数。数据范围2≤n,m≤

2021-02-07 21:18:52 505

原创 AcWing843. n-皇后问题(C++算法)

1、题目:n-皇后问题是指将 n 个皇后放在 n∗n 的国际象棋棋盘上,使得皇后不能相互攻击到,即任意两个皇后都不能处于同一行、同一列或同一斜线上。现在给定整数n,请你输出所有的满足条件的棋子摆法。输入格式共一行,包含整数n。输出格式每个解决方案占n行,每行输出一个长度为n的字符串,用来表示完整的棋盘状态。其中”.”表示某一个位置的方格状态为空,”Q”表示某一个位置的方格上摆着皇后。每个方案输出完成后,输出一个空行。输出方案的顺序任意,只要不重复且没有遗漏即可。数据范围1≤n≤9输

2021-01-20 10:56:31 434

原创 C++学习小记

1、scanf读入字符时不会忽略空格和回车,但cin默认会忽略空格和回车。

2021-01-17 11:21:54 283

原创 AcWing868. 筛质数 (朴素筛法、埃氏筛法、线性筛法)(C++算法)

AcWing868. 筛质数 (埃式筛法和线性筛法)1、题目:给定一个正整数n,请你求出1~n中质数的个数。输入格式共一行,包含整数n。输出格式共一行,包含一个整数,表示1~n中质数的个数。数据范围1≤n≤106输入样例:8输出样例:42、基本思想:(1)埃式筛法:...

2020-10-30 20:39:09 680

原创 AcWing867. 分解质因数(C++算法)

AcWing867. 分解质因数1、题目:给定n个正整数ai,将每个数分解质因数,并按照质因数从小到大的顺序输出每个质因数的底数和指数。输入格式第一行包含整数n。接下来n行,每行包含一个正整数ai。输出格式对于每个正整数ai,按照从小到大的顺序输出其分解质因数后,每个质因数的底数和指数,每个底数和指数占一行。每个正整数的质因数全部输出完毕后,输出一个空行。数据范围1≤n≤100,1≤ai≤2∗109输入样例:268输出样例:2 13 12 32、基本思想:①暴力枚举

2020-10-29 08:33:38 1184

原创 AcWing866. 试除法判定质数(C++算法)

AcWing866. 试除法判定质数1、题目:给定n个正整数ai,判定每个数是否是质数。输入格式第一行包含整数n。接下来n行,每行包含一个正整数ai。输出格式共n行,其中第 i 行输出第 i 个正整数ai是否为质数,是则输出“Yes”,否则输出“No”。数据范围1≤n≤100,1≤ai≤2∗109输入样例:226输出样例:YesNo2、基本思想:①暴力枚举:根据求质数的基本定义计算,时间复杂度为O(n);②优化:根据质数的基本性质(M能被d整除,则M也能被M/d整除)

2020-10-28 23:04:16 527

原创 AcWing854. Floyd求最短路(C++算法)

AcWing854. Floyd求最短路1、题目:给定一个n个点m条边的有向图,图中可能存在重边和自环,边权可能为负数。再给定k个询问,每个询问包含两个整数x和y,表示查询从点x到点y的最短距离,如果路径不存在,则输出“impossible”。数据保证图中不存在负权回路。输入格式第一行包含三个整数n,m,k接下来m行,每行包含三个整数x,y,z,表示存在一条从点x到点y的有向边,边长为z。接下来k行,每行包含两个整数x,y,表示询问点x到点y的最短距离。输出格式共k行,每行输出一个整数,

2020-10-22 20:42:30 322

原创 AcWing847. 图中点的层次(C++算法)

AcWing847. 图中点的层次1、题目:给定一个n个点m条边的有向图,图中可能存在重边和自环。所有边的长度都是1,点的编号为1~n。请你求出1号点到n号点的最短距离,如果从1号点无法走到n号点,输出-1。输入格式第一行包含两个整数n和m。接下来m行,每行包含两个整数a和b,表示存在一条从a走到b的长度为1的边。输出格式输出一个整数,表示1号点到n号点的最短距离。数据范围1≤n,m≤105输入样例:4 51 22 33 41 31 4输出样例:12、基本思想:用

2020-10-15 09:50:32 381

原创 AcWing846. 树的重心(C++算法)

#include #include #include #include using namespace std;const int N = 100010, M = N * 2;int n;int h[N], e[M], ne[M], idx;int ans = N;bool st[N];void add(int a, int b){e[idx] = b, ne[idx] = h[a], h[a] = idx ++ ;}int dfs(int u){st[u] = true;

2020-10-14 22:56:52 443

原创 AcWing848. 有向图的拓扑序列(C++算法)

AcWing848. 有向图的拓扑序列1、题目:给定一个n个点m条边的有向图,点的编号是1到n,图中可能存在重边和自环。请输出任意一个该有向图的拓扑序列,如果拓扑序列不存在,则输出-1。若一个由图中所有点构成的序列A满足:对于图中的每条边(x, y),x在A中都出现在y之前,则称A是该图的一个拓扑序列。输入格式第一行包含两个整数n和m接下来m行,每行包含两个整数x和y,表示存在一条从点x到点y的有向边(x, y)。输出格式共一行,如果存在拓扑序列,则输出拓扑序列。否则输出-1。数据范围

2020-10-07 19:35:43 437

原创 AcWing 844. 走迷宫(C++算法)

AcWing 844. 走迷宫1、题目:给定一个n*m的二维整数数组,用来表示一个迷宫,数组中只包含0或1,其中0表示可以走的路,1表示不可通过的墙壁。最初,有一个人位于左上角(1, 1)处,已知该人每次可以向上、下、左、右任意一个方向移动一个位置。请问,该人从左上角移动至右下角(n, m)处,至少需要移动多少次。数据保证(1, 1)处和(n, m)处的数字为0,且一定至少存在一条通路。输入格式第一行包含两个整数n和m。接下来n行,每行包含m个整数(0或1),表示完整的二维数组迷宫。输出格

2020-09-18 19:54:05 662

原创 AcWing 842. 排列数字(C++算法)

AcWing 842. 排列数字1、题目:给定一个整数n,将数字1~n排成一排,将会有很多种排列方法。现在,请你按照字典序将所有的排列方法输出。输入格式共一行,包含一个整数n。输出格式按字典序输出所有排列方案,每个方案占一行。数据范围1≤n≤7输入样例:3输出样例:1 2 31 3 22 1 32 3 13 1 23 2 12、基本思想:递归,按照字典序每排完一组(三级,比如1 2 3)就回溯上一级确定上一级要排的数。为了避免重复用state做位移运算,标记已经有数据

2020-09-09 20:14:34 409

原创 AcWing 841. 字符串哈希(C++算法)

AcWing 841. 字符串哈希1、题目:给定一个长度为n的字符串,再给定m个询问,每个询问包含四个整数l1,r1,l2,r2,请你判断[l1,r1]和[l2,r2]这两个区间所包含的字符串子串是否完全相同。字符串中只包含大小写英文字母和数字。输入格式第一行包含整数n和m,表示字符串长度和询问次数。第二行包含一个长度为n的字符串,字符串中只包含大小写英文字母和数字。接下来m行,每行包含四个整数l1,r1,l2,r2,表示一次询问所涉及的两个区间。注意,字符串的位置从1开始编号。输出格式

2020-09-07 18:39:26 257

原创 AcWing 840. 模拟散列表(C++算法)

AcWing 840. 模拟散列表1、题目:维护一个集合,支持如下几种操作:“I x”,插入一个数x;“Q x”,询问数x是否在集合中出现过;现在要进行N次操作,对于每个询问操作输出对应的结果。输入格式第一行包含整数N,表示操作数量。接下来N行,每行包含一个操作指令,操作指令为”I x”,”Q x”中的一种。输出格式对于每个询问指令“Q x”,输出一个询问结果,如果x在集合中出现过,则输出“Yes”,否则输出“No”。每个结果占一行。数据范围1≤N≤105−109≤x≤109输

2020-09-07 10:57:44 183

原创 AcWing 839. 模拟堆(C++算法)

AcWing 839. 模拟堆1、题目:维护一个集合,初始时集合为空,支持如下几种操作:“I x”,插入一个数x;“PM”,输出当前集合中的最小值;“DM”,删除当前集合中的最小值(数据保证此时的最小值唯一);“D k”,删除第k个插入的数;“C k x”,修改第k个插入的数,将其变为x;现在要进行N次操作,对于所有第2个操作,输出当前集合的最小值。输入格式第一行包含整数N。接下来N行,每行包含一个操作指令,操作指令为”I x”,”PM”,”DM”,”D k”或”C k x”中的一种。

2020-09-05 15:49:15 174

原创 AcWing 838. 堆排序(C++算法)

AcWing 838. 堆排序1、题目:输入一个长度为n的整数数列,从小到大输出前m小的数。输入格式第一行包含整数n和m。第二行包含n个整数,表示整数数列。输出格式共一行,包含m个整数,表示整数数列中前m小的数。数据范围1≤m≤n≤105,1≤数列中元素≤109输入样例:5 34 5 1 3 2输出样例:1 2 32、基本思想:小根堆,看成一个完全二叉树,将一个数与它的左右子节点相比较,大数下沉。3、步骤:①插入一个数 heap[++size] = x; down(s

2020-08-26 22:06:48 193

原创 AcWing 240. 食物链(C++算法)

AcWing 240. 食物链1、题目:动物王国中有三类动物A,B,C,这三类动物的食物链构成了有趣的环形。A吃B, B吃C,C吃A。现有N个动物,以1-N编号。每个动物都是A,B,C中的一种,但是我们并不知道它到底是哪一种。有人用两种说法对这N个动物所构成的食物链关系进行描述:第一种说法是”1 X Y”,表示X和Y是同类。第二种说法是”2 X Y”,表示X吃Y。此人对N个动物,用上述两种说法,一句接一句地说出K句话,这K句话有的是真的,有的是假的。当一句话满足下列三条之一时,这句话就是

2020-08-24 16:35:49 524 1

转载 AcWing 143. 最大异或对(C++算法)

AcWing 143. 最大异或对1、题目(来源于AcWing):在给定的N个整数A1,A2……AN中选出两个进行xor(异或)运算,得到的结果最大是多少?输入格式第一行输入一个整数N。第二行输入N个整数A1~AN。输出格式输出一个整数表示答案。数据范围1≤N≤105,0≤Ai<231输入样例:31 2 3输出样例:32、基本思想:3、步骤:4、C++代码如下(该代码引用AcWing网站的代码):#include <iostream>using n

2020-08-19 12:04:22 542

原创 AcWing 803. 区间合并(C++)

AcWing 803. 区间合并1、题目(来源于AcWing):给定 n 个区间 [li,ri],要求合并所有有交集的区间。注意如果在端点处相交,也算有交集。输出合并完成后的区间个数。例如:[1,3]和[2,6]可以合并为一个区间[1,6]。输入格式第一行包含整数n。接下来n行,每行包含两个整数 l 和 r。输出格式共一行,包含一个整数,表示合并区间完成后的区间个数。数据范围1≤n≤100000,−109≤li≤ri≤109输入样例:51 22 45 67 87 9

2020-08-17 15:11:02 1116

原创 AcWing 802. 区间和(C++)

AcWing 802. 区间和1、题目(来源于AcWing):假定有一个无限长的数轴,数轴上每个坐标上的数都是0。现在,我们首先进行 n 次操作,每次操作将某一位置x上的数加c。接下来,进行 m 次询问,每个询问包含两个整数l和r,你需要求出在区间[l, r]之间的所有数的和。输入格式第一行包含两个整数n和m。接下来 n 行,每行包含两个整数x和c。再接下里 m 行,每行包含两个整数l和r。输出格式共m行,每行输出一个询问中所求的区间内数字和。数据范围−109≤x≤109,1≤n,

2020-08-17 11:02:31 328

原创 离散化(C++)

要求:将几个数据范围较大的数映射到自然数:1 ~ nvector <int> alls;//待离散化的数组,eg:5000000,640500,8000,9345,8000 sort(alls.begin(), alls.end());//排序,8000,8000,9345,640500,5000000 alls.erase(unique(alls.begin(), alls.end()), alls.end());//unique(alls.begin(), alls.end())将原数

2020-08-17 10:11:57 477

原创 洛谷 P3406 海底高铁(C++)

洛谷 P3406 海底高铁1、题目(来源于洛谷):某铁路经过N个城市,每个城市都有一个站。不过,由于各个城市之间不能协调好,于是乘车每经过两个相邻的城市之间(方向不限),必须单独购买这一小段的车票。第i段铁路连接了城市i和城市i+1(1<=i<N)。如果搭乘的比较远,需要购买多张车票。第i段铁路购买纸质单程票需要Ai博艾元。虽然一些事情没有协调好,各段铁路公司也为了方便乘客,推出了IC卡。对于第i段铁路,需要花Ci博艾元的工本费购买一张IC卡,然后乘坐这段铁路一次就只要扣Bi(Bi<

2020-08-07 06:39:41 850

原创 洛谷 P3397 地毯

洛谷 P3397 地毯1、题目(来源于洛谷):2、主要思想:①用二维数组前缀和优化②差分矩阵3、C++代码如下:#include <iostream>using namespace std;void insert(int x1, int y1, int x2, int y2, int c);const int N = 1010;int n, m;int a[N][N], b[N][N];int main(){ cin >> n >

2020-08-06 21:48:22 327

原创 洛谷 P1147 连续自然数和(C++)

洛谷 P1147 连续自然数和1、题目(来源于洛谷):2、主要思想:①先想到双重循环暴力枚举②发现可以将枚举区间右端缩小为m的一半,因为从m / 2 + (m / 2 + 1)开始后面都会大于m③又发现因为可以用双指针,当枚举到s[j] - s[i - 1] == m或者s[j] - s[i - 1] > m时可以直接跳出循环,枚举下一个 i 。④用前缀和优化计算子序列和的部分3、C++代码如下:#include <iostream>using namespace s

2020-08-06 21:39:29 2723 2

原创 洛谷 P4702 取石子(C++)

洛谷 P4702 取石子1、题目(来源于洛谷):2、主要思想:①假设现在还有石头但是不能取了,则一定有a[n] <= a[n-1] <= … <=a[0]=0。显然这是不可能的,所以只要还有石头就一定可以取。谁赢谁输取决于石子总数是奇数还是偶数,如果为奇数则第一个取的人会赢,如果为偶数则第二个取的人会赢。那么问题就转化成求石子总数。②用前缀和优化,降低时间复杂度。3、C++代码如下:#include <iostream>using namespace std

2020-08-06 21:00:31 997

原创 洛谷 P5638 【CSGRound2】光骓者的荣耀

洛谷 P5638 【CSGRound2】光骓者的荣耀1、题目(来源于洛谷):小 K 打下的江山一共有n个城市,城市 i 和城市 i+1 有一条双向高速公路连接,走这条路要耗费时间a(i)。小 K 为了关心人民生活,决定定期进行走访。他每一次会从1号城市到n号城市并在经过的城市进行访问。其中终点必须为城市n。不仅如此,他还有一个传送器,传送半径为k,也就是可以传送到 i-k 和 i+k 。如果目标城市编号小于1则为1,大于n则为n。但是他的传送器电量不足,只能传送一次,况且由于一些原因,他想尽量快的

2020-08-06 20:32:21 968

原创 洛谷 P1604 B进制星球 (C++)

洛谷 P1604 B进制星球1、题目(来源于洛谷网站):题目背景进制题目,而且还是个计算器~~题目描述话说有一天,小Z乘坐宇宙飞船,飞到一个美丽的星球。因为历史的原因,科技在这个美丽的星球上并不很发达,星球上人们普遍采用B(2<=B<=36)进制计数。星球上的人们用美味的食物招待了小Z,作为回报,小Z希望送一个能够完成B进制加法的计算器给他们。 现在小Z希望你可以帮助他,编写实现B进制加法的程序。输入格式共3行第1行:一个十进制的整数,表示进制B。第2-3行:每行一个B进制数正整数

2020-07-31 09:29:36 543 1

原创 AcWing 835. Trie字符串统计(C++算法)

AcWing 835. Trie字符串统计1、题目(来源于AcWing):维护一个字符串集合,支持两种操作:“I x”向集合中插入一个字符串x;“Q x”询问一个字符串在集合中出现了多少次。共有N个操作,输入的字符串总长度不超过 105,字符串仅包含小写英文字母。输入格式第一行包含整数N,表示操作数。接下来N行,每行包含一个操作指令,指令为”I x”或”Q x”中的一种。输出格式对于每个询问指令”Q x”,都要输出一个整数作为结果,表示x在集合中出现的次数。每个结果占一行。数据范围

2020-07-31 09:26:59 281

原创 AcWing 837. 连通块中点的数量(C++算法)

AcWing 837. 连通块中点的数量1、题目(来源于AcWing):给定一个包含n个点(编号为1~n)的无向图,初始时图中没有边。现在要进行m个操作,操作共有三种:“C a b”,在点a和点b之间连一条边,a和b可能相等;“Q1 a b”,询问点a和点b是否在同一个连通块中,a和b可能相等;“Q2 a”,询问点a所在连通块中点的数量;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为“C a b”,“Q1 a b”或“Q2 a”中的一种。输出格式对于每个询问指令

2020-07-30 21:29:01 903

原创 AcWing 836. 合并集合(C++算法)

AcWing 836. 合并集合1、题目(来源于AcWing):一共有n个数,编号是1~n,最开始每个数各自在一个集合中。现在要进行m个操作,操作共有两种:“M a b”,将编号为a和b的两个数所在的集合合并,如果两个数已经在同一个集合中,则忽略这个操作;“Q a b”,询问编号为a和b的两个数是否在同一个集合中;输入格式第一行输入整数n和m。接下来m行,每行包含一个操作指令,指令为“M a b”或“Q a b”中的一种。输出格式对于每个询问指令”Q a b”,都要输出一个结果,如果a和

2020-07-30 17:38:07 269

原创 AcWing 831. KMP字符串(C++算法)

AcWing 831. KMP字符串1、题目(来源于AcWing):给定一个模式串S,以及一个模板串P,所有字符串中只包含大小写英文字母以及阿拉伯数字。模板串P在模式串S中多次作为子串出现。求出模板串P在模式串S中所有出现的位置的起始下标。输入格式第一行输入整数N,表示字符串P的长度。第二行输入字符串P。第三行输入整数M,表示字符串S的长度。第四行输入字符串S。输出格式共一行,输出所有出现位置的起始下标(下标从0开始计数),整数之间用空格隔开。数据范围1≤N≤1051≤M≤106

2020-07-23 11:36:49 272

原创 AcWing 154. 滑动窗口(C++算法)

AcWing 154. 滑动窗口1、题目(来源于AcWing):给定一个大小为n≤106的数组。有一个大小为k的滑动窗口,它从数组的最左边移动到最右边。您只能在窗口中看到k个数字。每次滑动窗口向右移动一个位置。以下是一个例子:该数组为[1 3 -1 -3 5 3 6 7],k为3。您的任务是确定滑动窗口位于每个位置时,窗口中的最大值和最小值。输入格式输入包含两行。第一行包含两个整数n和k,分别代表数组长度和滑动窗口的长度。第二行有n个整数,代表数组的具体数值。同行数据之间用空格隔

2020-07-22 17:18:24 1989

原创 AcWing 830. 单调栈(C++算法)

AcWing 830. 单调栈1、题目(来源于AcWing):给定一个长度为N的整数数列,输出每个数左边第一个比它小的数,如果不存在则输出-1。输入格式第一行包含整数N,表示数列长度。第二行包含N个整数,表示整数数列。输出格式共一行,包含N个整数,其中第i个数表示第i个数的左边第一个比它小的数,如果不存在则输出-1。数据范围1≤N≤1051≤数列中元素≤109输入样例:53 4 2 7 5输出样例:-1 3 -1 2 22、基本思想:①先用暴力作法发现要用两重循环,时间复杂

2020-07-21 21:27:32 366

原创 AcWing 829. 模拟队列(C++算法)

AcWing 829. 模拟队列1、题目(来源于AcWing):实现一个队列,队列初始为空,支持四种操作:(1) “push x” – 向队尾插入一个数x;(2) “pop” – 从队头弹出一个数;(3) “empty” – 判断队列是否为空;(4) “query” – 查询队头元素。现在要对队列进行M个操作,其中的每个操作3和操作4都要输出相应的结果。输入格式第一行包含整数M,表示操作次数。接下来M行,每行包含一个操作命令,操作命令为”push x”,”pop”,”empty”,”qu

2020-07-21 15:30:32 337

原创 AcWing 828. 模拟栈(C++算法)

AcWing 828. 模拟栈1、题目(来源于AcWing):实现一个栈,栈初始为空,支持四种操作:(1) “push x” – 向栈顶插入一个数x;(2) “pop” – 从栈顶弹出一个数;(3) “empty” – 判断栈是否为空;(4) “query” – 查询栈顶元素。现在要对栈进行M个操作,其中的每个操作3和操作4都要输出相应的结果。输入格式第一行包含整数M,表示操作次数。接下来M行,每行包含一个操作命令,操作命令为”push x”,”pop”,”empty”,”query”中

2020-07-21 15:20:23 230

原创 AcWing 827. 双链表(C++算法)

AcWing 827. 双链表1、题目(来源于AcWing):实现一个双链表,双链表初始为空,支持5种操作:(1) 在最左侧插入一个数;(2) 在最右侧插入一个数;(3) 将第k个插入的数删除;(4) 在第k个插入的数左侧插入一个数;(5) 在第k个插入的数右侧插入一个数现在要对该链表进行M次操作,进行完所有操作后,从左到右输出整个链表。注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了n个数,则按照插入的时间顺序,这n个数依次为:第1个插入的数,第2个插入的数

2020-07-20 17:14:15 278

原创 AcWing 826. 单链表(C++算法)

AcWing 826. 单链表1、题目(来源于AcWing):实现一个单链表,链表初始为空,支持三种操作:(1) 向链表头插入一个数;(2) 删除第k个插入的数后面的数;(3) 在第k个插入的数后插入一个数现在要对该链表进行M次操作,进行完所有操作后,从头到尾输出整个链表。注意:题目中第k个插入的数并不是指当前链表的第k个数。例如操作过程中一共插入了n个数,则按照插入的时间顺序,这n个数依次为:第1个插入的数,第2个插入的数,…第n个插入的数。输入格式第一行包含整数M,表示操作次数。接下

2020-07-20 10:06:45 476 1

原创 输出用空格隔开的一段话中的每一个单词(C++)

输出用空格隔开的一段话中的某一个单词输入样例:I love you输出样例:IloveyouC++代码如下(该代码引用AcWing网站的代码):#include <iostream>#include <string.h>using namespace std;int main(){ char str[1000]; gets(str); int n = strlen(str); for (int i = 0; i < n; i ++

2020-07-16 17:05:34 1526 1

原创 输出n的二进制数第k位是几(C++)

输出n的二进制数第k位是几1、题目:n为十进制数,k为要输出的位数。输入样例:11 2输出样例:02、基本思路:用n右移k位(x = n >> k),看个位是几(x & 1),即 x >> k & 13、C++代码如下(该代码引用AcWing网站的代码):#include <iostream>using namespace std;int main(){ int n, k; cin >> n >>

2020-07-16 16:50:51 989

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除