华为模拟机试_C++题解】的更多相关文章

华为模拟机试 [编程|100分] a+b 题目描述 计算a+b的和 每行包含两个整数a和b 对于每行输入对应输出一行a和b的和 输入 1 5 输出 6 自解 #include<iostream> using namespace std; int main() { int a, b; while(cin >> a >> b){ cout << a + b << endl; } } ⭐cin流本身有返回值,读取成功为true,失败为false 考虑使…
2014华为机试西安地区B组试题 题目一.亮着点灯的盏数 一条长廊里依次装有n(1≤n≤65535)盏电灯,从头到尾编号1.2.3.-n-1.n.每盏电灯由一个拉线开关控制.開始,电灯所有关着. 有n个学生从长廊穿过.第一个学生把号码凡是1的倍数的电灯的开关拉一下:接着第二个学生把号码凡是2的倍数的电灯的开关拉一下:接着第三个学生把号码凡是3的倍数的电灯的开关拉一下:如此继续下去,最后第n个学生把号码凡是n的倍数的电灯的开关拉一下.n个学生按此规定走完后,长廊里电灯有几盏亮着. 注:电灯数和学生…
华为机试 字符串最后一个单词的长度 计算字符串最后一个单词的长度,单词以空格隔开. 提交网址: http://www.nowcoder.com/practice/8c949ea5f36f422594b306a2300315da?tpId=37&tqId=21224 参与人数:2504  时间限制:1秒 空间限制:32768K 本题知识点: 字符串 输入描述: 一行字符串. 输出描述: 整数N,最后一个单词的长度. 输入例子: hello world 输出例子: 5 AC代码(C语言风格): 文件…
2014华为机试西安地区A组试题 题目一.分苹果 M个同样苹果放到N个同样篮子里有多少种放法,同意有篮子不放. 1<=M<=10.1<=N<=10 比如5个苹果三个篮子,3,1,1 和 1,1,3是同一种放法 输入 7 3 输出 8题目分析: 这道题相似于整数划分的题目.这是非常早的一道ACM的题目,主要思路就是考递归. ①当苹果数目或者篮子数目为1时候,就仅仅有一种可能 ②当苹果数目小于篮子数目的时候.依照苹果数目来分配 ③当苹果数目大于篮子数目的时候.空一个盘子 + 先每一个盘…
今晚做了华为的机试,3道ACM题,最后一道是实现从M个不同字符中任取N个字符的所有组合. eg: input:ABC 2 output:AB AC BC 第一个输入为字符串,第二个输入为组合的字符个数,当N=0或者N>M时,输出“ERROR”. 思路:可以用递归的算法解决,例如ABC中2个字符的所有组合,先选取第一个的A,那包含A的2个字符的所有组合就是从后面剩余的BC中取1个字符的所有组合,然后选取第二个的B,那包含B的2个字符的所有组合就是从后面剩余的C中取1个字符的组合,即只有C,到选取第…
拖延症又犯了QwQ. 今天上午考试了,按照惯例,我仍然要把我会的所有题的题解写一遍. 1.找试场(way.cpp/in/out) 问题描述 小王同学在坐标系的(0,0)处,但是他找不到考试的试场,于是一边走路一边问路, 每个被问路的人会告诉他一个指令(包括走路或转弯),现在请编一个程序,显示他每次走 路后的坐标(转弯后坐标不变,所以不必显示坐标). 初始方向向 y 轴正半轴!! 输入格式 第一行一个数 n,表示有 n 个指令,接下来 n 行每行一个指令,每个指令是“left” 或 “right”…
下面题目都是回顾的.题目都非常easy, 大家有些基础就能够參加!(语言能够是c/c++.也能够是java的) 题目一(60分): 字符串操作. 将小写转换成大写, 将大写转化为小写, 数字的不做转换 比如. 输入:aBcD12 输出:AbCd12 题目二(100分): 将输入的字符串依照规定又一次排序.假设字符串长度为奇数. 则中间的字符保持不变, 中间字符左側降序排列, 右側字符依照升序排列. 假设字符串长度为偶数.则左半側字符降序排列,右半側字符则依照升序排列 比如, 输入:ab5de 输…
2019 秋季 PAT (Advanced Level) C++题解 考试拿到了满分但受考场状态和知识水平所限可能方法不够简洁,此处保留记录,仍需多加学习.备考总结(笔记目录)在这里 7-1 Forever (20 分) "Forever number" is a positive integer A with K digits, satisfying the following constrains: the sum of all the digits of A is m; the…
排序题 PAT (Advanced Level) Practice 排序题 目录 <算法笔记> 6.9.6 sort()用法 <算法笔记> 4.1 排序题步骤 1012 The Best Rank (25) 1083 List Grades (25) 1137 Final Grading (25) 1141 PAT Ranking of Institutions (25) 1153 Decode Registration Card of PAT (25) <算法笔记>…
第一题:拼音转数字输入是一个只包含拼音的字符串,请输出对应的数字序列.转换关系如下:描述:      拼音        yi  er  san  si  wu  liu  qi  ba  jiu      阿拉伯数字        1   2   3      4   5    6    7   8   9输入字符只包含小写字母,所有字符都可以正好匹配 运行时间限制:无限制内存限制:       无限制输入:              一行字符串,长度小于1000输出:            …
import java.util.Scanner; //输入字符串,去掉重复的字符,并按ASSIC码值排序 public class quChong { public static void main(String arg[]){ Scanner cin = new Scanner(System.in); String str = cin.nextLine(); char c[] = str.toCharArray(); int count=0; int flag=0; for(int i=0;…
题目描写叙述: 求整数的Root:给定正整数,求每位数字之和;假设和不是一位数,则反复; 输入:输入随意一个或多个整数 输出:输出各位数字之和,直到和为个位数为止(输入异常,则返回-1),多行,每行相应一个输入数据的结果. 例子输入: 25 865 例子输出: 7 1 解题思路:对于给定的数n,使用n%10来分离n获得各个位上的数,然后进行相加,假设和大于10,继续分离,继续求和.直到和小于10. 代码例如以下: public class root_Number { public static…
Catcher是MCA国的情报员,他工作时发现敌国会用一些对称的password进行通信,比方像这些ABBA.ABA,A,123321,可是他们有时会在開始或结束时增加一些无关的字符以防止别国破解.比方进行下列变化 ABBA->12ABBA,ABA->ABAKK,123321->51233214 .由于截获的串太长了,并且存在多种可能的情况(abaaab可看作是aba,或baaab的加密形式),Cathcer的工作量实在是太大了,他仅仅能向电脑高手求助,你能帮Catcher找出最长的有效…
一:首先科普一下约瑟夫问题的数学方法 (1)  不管是用list实现还是用vector实现都有一个共同点:要模拟整个游戏过程,不仅程序写起来比較烦,并且时间复杂度高达O(nm),当n,m很大(比如上百万,上千万)的时候,差点儿是没有办法在短时间内出结果的.我们注意到原问题不过要求出最后的胜利者的序号,而不是要读者模拟整个过程.因此假设要追求效率,就要打破常规,实施一点数学策略. (2) 为了讨论方便,先把问题略微改变一下,并不影响原意:  问题描写叙述:n个人(编号0~(n-1)),从0開始报数…
题目描述 1 1 1 1 1 2 3 2 1 1 3 6 7 6 3 11 4 10 16 19 16 10 4 1以上三角形的数阵,第一行只有一个数1,以下每行的每个数,是恰好是它上面的数,左上角数到右上角的数,3个数之和(如果不存在某个数,认为该数就是0).求第n行第一个偶数出现的位置.如果没有偶数,则输出-1.例如输入3,则输出2,输入4则输出3. 输入n(n <= 1000000000)输入描述:输入一个int整数输出描述:输出返回的int值示例1输入 4输出 3 程序实现 import…
来源:牛客网 老师想知道从某某同学当中,分数最高的是多少,现在请你编程模拟老师的询问.当然,老师有时候需要更新某位同学的成绩. 输入描述: 输入包括多组测试数据.每组输入第一行是两个正整数N和M(0 < N <= 30000,0 < M < 5000),分别代表学生的数目和操作的数目.学生ID编号从1编到N.第二行包含N个整数,代表这N个学生的初始成绩,其中第i个数代表ID为i的学生的成绩接下来又M行,每一行有一个字符C(只取‘Q’或‘U’),和两个正整数A,B,当C为'Q'的时候…
题目 解法 import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int num = sc.nextInt(); int res = 0; while(num !=0 ){ if( (num&1) == 1){ res++; } //无符号右移 num >>>= 1; } System.o…
题目描述 输入一个int型的正整数,计算出该int型数据在内存中存储时1的个数. 输入描述: 输入一个整数(int类型) 输出描述: 这个数转换成2进制后,输出1的个数 输入 5 输出 2 普通运算方法 #include<iostream> using namespace std; int main(){ ; cin>>num; while(num){ ==) num/=; else{ count++; num/=; } } cout<<count; ; } 运用右移运…
1.常考字符串处理:对处理字符串的方法. (a)统计字符串中特定字符的个数. 2.郭靖考了一道二维数组?? 3.多了解了解最常用的那个类库的方法.…
题目标题: 计算阶乘n!是一件可怕的事情,因为当n并不是很大时,n!将是一个很大的值.例如13! = 6227020800,已经超过了我们常用的unsigned int类型的取值范围.请设计一个程序,使其可以计算100以内的数的阶乘,结果用字符串的形式输出 思路: 此题类此大整数相乘,循环相乘,以字符串的形式输出...大整数相乘用的是普通循环方式,不是基于分治的乘法 public class jiecheng4741 { public static String LongMulti(String…
链表处理 PAT (Advanced Level) Practice 链表题 目录 <算法笔记> 重点摘要:静态链表 1032 Sharing (25) 1052 Linked List Sorting (25) 1097 Deduplication on a Linked List (25) 1133 Splitting A Linked List (25) 附: 动态链表 <算法笔记> 7.3 链表 重点摘要 静态链表 ⭐ (1) 定义 结构体类型名和结构体变量名尽量不同 st…
Dijkstra PAT (Advanced Level) Practice Dijkstra 相关题 目录 <算法笔记>重点摘要 1003 Emergency (25) <算法笔记> 10.4.1 Dijkstra 重点摘要 对任意给出的图 G(V,E) 和 起点 S,终点 T,求 S 到 T 的最短路径 1. 简介 解决单源最短路问题 只能处理所有边权均非负的情况 若出现负数,最好使用 SPFA 算法 2. 邻接矩阵 const int MAXV = 1000; const i…
模拟题 PAT (Advanced Level) Practice 模拟题 目录 1008 Elevator (20) 1042 Shuffling Machine (20) 1046 Shortest Distance (20) 1051 Pop Sequence (25) 1117 Eddington Number (25) 1128 N Queens Puzzle (20) 1008 Elevator (20) #include<cstdio> int main() { int N; s…
进制转换题 PAT (Advanced Level) Practice 进制转换题 目录 <算法笔记> 重点摘要 1015 Reversible Primes (20) 1019 General Palindromic Number (20) 1027 Colors in Mars (20) 1058 A+B in Hogwarts (20) 1100 Mars Numbers (20) <算法笔记> 3.5 进制转换 重点摘要 P进制转换为Q进制,分两步 P进制转换为10进制 /…
字符串处理题 目录 <算法笔记> 重点摘要 1001 A+B Format (20) 1005 Spell It Right (20) 1108 Finding Average (20) 1132 Cut Integer (20) 1140 Look-and-say Sequence <算法笔记> 3.6 字符串处理 重点摘要 注意分析输入输出格式 注意细节和边界情况 1001 A+B Format (20) #include<iostream> using names…
散列 PAT (Advanced Level) Practice 散列题 目录 <算法笔记> 重点摘要 1002 A+B for Polynomials (25) 1009 Product of Polynomials (25) 1084 Broken Keyboard (20) 1092 To Buy or Not to Buy (20) 1116 Come on! Let's C (20) 1121 Damn Single (25) <算法笔记> 4.2 散列 重点摘要 1.…
二叉树 PAT (Advanced Level) Practice 二叉树 相关题 目录 <算法笔记> 重点摘要 1020 Tree Traversals (25) 1086 Tree Traversals Again (25) 1102 Invert a Binary Tree (25) 1119 Pre- and Post-order Traversals (30) 1127 ZigZagging on a Tree (30) 1138 Postorder Traversal (25) 1…
树 目录 <算法笔记>重点摘要 1004 Counting Leaves (30) 1053 Path of Equal Weight (30) 1079 Total Sales of Supply Chain (25) 1090 Highest Price in Supply Chain (25) 1094 The Largest Generation (25) 1106 Lowest Price in Supply Chain (25) <算法笔记> 9.2 树的遍历 重点摘要…
二叉查找树 PAT (Advanced Level) Practice 二叉查找树 相关题 目录 <算法笔记> 重点摘要 1099 Build A Binary Search Tree (30) 1115 Counting Nodes in a BST (30) 1143 Lowest Common Ancestor (30) <算法笔记> 9.4 二叉查找树 重点摘要 二叉查找树静态实现 ⭐ (1) 定义 struct Node{ typename data; int level…
并查集 PAT (Advanced Level) Practice 并查集 相关题 <算法笔记> 重点摘要 1034 Head of a Gang (30) 1107 Social Clusters (30) 1118 Birds in Forest (25) <算法笔记> 9.6 并查集 重点摘要 1. 定义 father[i] 表示元素 i的父结点 father[i] = i 表示元素 i 为该集合根结点 每个集合只存在一个根结点,且其作为所属集合的标识 int father[…