编程题
zhouzhouzhou_li
这个作者很懒,什么都没留下…
展开
-
C++ 1009 说反话(20 分)
注意点1:转载自:https://blog.csdn.net/u011421608/article/details/44591579我们先来看一段输入流cin>>和getline混用的代码:#include<iostream>#include<string>using namespace std;int main(){ in...原创 2018-08-26 11:04:37 · 8411 阅读 · 1 评论 -
C++ 1022 D进制的A+B(20 分)
自写(采用向量和数组两种方式保存数据)#include<iostream>#include<vector>using namespace std;int main(){ int a,b,c,he,result,k=0; cin>>a>>b>>c; he =a+b; vector <int&...原创 2018-08-29 12:01:00 · 682 阅读 · 0 评论 -
C++ 1006 换个格式输出整数 (15)(15 分)
自写:#include<iostream>using namespace std;int main(){ int a; int a1,a2,a3; cin>>a; a1=a/100; a2=(a%100)/10; a3=a%10; for(int i=0;i<a1;i++) { cout<<"B";...原创 2018-08-25 09:33:35 · 689 阅读 · 0 评论 -
C++ 1027 打印沙漏(20 分)
注意:这个题目符号后面是没有空格的。(只有左边有空格) 真捞! 花了我好长时间才找到问题#include<iostream>using namespace std;int main(){ int a; char b; cin>>a>>b; int k=0,n,sheng; while(1){ ...原创 2018-09-01 09:35:00 · 3114 阅读 · 0 评论 -
C++ 1028 人口普查(20 分)
此题关键点有两处:1 有一种情况 没有最大最小年龄的人,所以只输出02 判断的时候 年份越大 是越年轻 判断的时候应该注意(当时自己写写反了,思维定式)if((temp.yy<max.yy)||((temp.yy==max.yy)&&(temp.mm<max.mm))||((temp.yy==max.yy)&&(temp.m...原创 2018-09-01 11:28:23 · 976 阅读 · 0 评论 -
C++ 1029 旧键盘(20 分)
注意:1 每个坏键只输出1次 可以用一个条件来判断(初始化为0,判断是否为1,不是1输出一次然后赋值为1,否则不输出)2 如果输入的是a(a[i]=a) 想要输出A 直接输出cout<<a[i]-'a'+'A'答案是是错误的 应该是cout<<char(a[i]-'a'+'A')或者 完整代码如下#include<iostre...原创 2018-09-01 15:12:05 · 2110 阅读 · 1 评论 -
C++ 1007 素数对猜想(20 分)
思路:1:求出1到N之间的素数2:判断满足条件的素数对个数 注意:for(j=2;j<=sqrt(i);j++) 有等号,否则会出错。#include<iostream>#include<cmath> //sqrt()using namespace std;int main(){ int i,j,cnt=0; int...原创 2018-08-25 20:46:31 · 1078 阅读 · 0 评论 -
C++ 1023 组个最小数(20 分)
自写思路:分为有0和没有0两种情况输出#include<iostream>using namespace std;int main(){ int a[10]; for(int i=0;i<10;i++) cin>>a[i]; if(a[0]==0){ //没有0的情况 for(int i=1;i<10;i++){...原创 2018-08-29 23:04:52 · 524 阅读 · 0 评论 -
C++ 1030 完美数列(25 分)
参照:https://blog.csdn.net/qq_34594236/article/details/52132036看完题目最容易想到的是:先将数列排列后, for i循环中嵌套一个for j找出能选出的最大数 。1.N的范围是(<=10^9) N^2会达到10^18,可能会超时。用ans记录当前最大能选择的个数,当进行下一次 i 判断的时候,就可以减少不必要的判断,从...原创 2018-09-01 19:14:42 · 1325 阅读 · 1 评论 -
C++ 1008 数组元素循环右移问题 (20)(20 分)
思路:在输入的时候就判断移动之后每个元素的位置,直接输入到指定位置之后输出。位置变换对应关系:初始 变化后0 N-M1 N-M+12 N-M+2......M-1 N-1-----------------------M 0M+1 1......N-1 N-M-1 注意...原创 2018-08-25 23:19:32 · 2824 阅读 · 9 评论 -
C++ 1031 查验身份证(15 分)
注意点1 int 数组的初始化赋值方法2 char 数组的初始化赋值方法3 输入char 类型的方法 scanf("%s",id);4 cin和c语言的gets或者fgets类似,都会在获取字符串输入后自动在字符串末尾加\0截断。有效输入之后的数据为随机的脏数据。在字符数组使用前可以使用memset进行初始化#include<iostream>usin...原创 2018-09-01 21:51:53 · 2696 阅读 · 0 评论 -
C++ 1035 插入与归并(25 分)
在本文中:方法1是参考别人大神的,但他把两个算法写在一个主函数里面。我想把两种算法用子函数的形式写出来,所以就有了方法2,方法2在PAT上面可以提交成功,但无法在VS2013上通过编译,原因在于这种形式在VS里面是不合法的。于是我改用vector进行存储输入的数据,在方法2 的基础之上改进得方法3,终于使得代码既能在PAT上通过又能在VS2013上通过。有以下几点需要注意...原创 2018-09-04 20:28:08 · 1591 阅读 · 0 评论 -
C++ 华为2016校园招聘上机笔试题 (最高分是多少、简单错误记录)
#include<iostream>using namespace std;int main(){ int n,m; while(cin>>n&&cin>>m){ //cin>>m; int score[n+1]; char temp; int...原创 2018-09-07 20:33:37 · 1263 阅读 · 0 评论 -
C++ 1032 挖掘机技术哪家强(20 分)
很平常的一道题目#include<iostream>using namespace std;int main(){ int n,num,score; cin>>n; int a[n+10]={0}; int max,num_max; max=0; for(int i=0;i<n;i++){ cin>>n...原创 2018-09-02 21:13:29 · 1059 阅读 · 0 评论 -
C++ 华为研发工程师编程题(汽水瓶、明明的随机数、进制转换)
#include<iostream>using namespace std;int main(){ int n; while(cin>>n){ if (n==0) break; else cout<<(n/2)<<endl; } return 0;} ...原创 2018-09-05 17:29:26 · 660 阅读 · 0 评论 -
C++ 1036 跟奥巴马一起编程(15 分)
#include<iostream>using namespace std;int main(){ int n,hang,lie; char b; cin>>n>>b; lie = n; hang = (n+1)/2; for(int i=0;i<hang;i++){ for(int j=0;j<l...原创 2018-09-05 17:44:45 · 737 阅读 · 0 评论 -
C++ 华为2016研发工程师编程题 ( 删数、字符集合)
注意:前提又是可以输入多组数据方法1(自己的方法,数组的方式)#include<iostream>using namespace std;int main(){ int n,m; int shang,yu; while(cin>>n){ if(n>1000) n=1000; int a[1000]; ...原创 2018-09-05 22:10:26 · 813 阅读 · 0 评论 -
C++ 1033 旧键盘打字(20 分)
自写 按照要求来,没什么注意点#include<iostream>#include<string.h>using namespace std;int main(){ string huai,input; int huai_num,input_num; getline(cin,huai); getline(cin,input);...原创 2018-09-03 19:59:49 · 365 阅读 · 0 评论 -
C++ 1021 个位数统计(15 分)
方法1 (自写,很机械)#include<iostream>#include<string.h>using namespace std;int main(){ string str; cin>>str; int c0,c1,c2,c3,c4,c5,c6,c7,c8,c9; c0=c1=c2=c3=c4=c5=c6=c7=c8=...原创 2018-08-29 11:32:50 · 601 阅读 · 1 评论 -
C++ 1020 月饼(25 分)
1020 月饼(25 分)#include<iostream>#include<algorithm>//sort#include<vector>using namespace std;struct stu{ double a,b,c; }; //return a>b 表示降序,return a<b表示升序boo...原创 2018-08-29 11:06:25 · 1352 阅读 · 0 评论 -
c++ 1005 继续(3n+1)猜想 (25)(25 分)
1:#include<algorithm>:algorithm意为"算法",是C++的标准模版库(STL)中最重要的头文件之一,提供了大量基于迭代器的非成员模版函数。2:升序、降序sort1)自己编写compare函数:bool compare(int a,int b){ return a<b; //升序排列,如果改为return a...原创 2018-08-24 23:26:53 · 2030 阅读 · 1 评论 -
c++ 1010 一元多项式求导(25 分)
方法1思路:每次取两个值a,b,输出两个值a*b,b-1。(前提a*b!=0)注意点:注意“零多项式”的指数和系数都是 0,但是表示为 0 0 #include <iostream> using namespace std; int main() { int a, b; bool first = true; ...原创 2018-08-26 14:40:14 · 2676 阅读 · 1 评论 -
C++ 1011 A+B 和 C(15 分)
(自写)用while#include<iostream>using namespace std;int main(){ int T,i=0; cin>>T; if (T>10) return 0; double A,B,C; //A,B都在2^31范围内,二者加起来就可能不是了,这里需要注意用double while(i...原创 2018-08-26 15:15:08 · 4097 阅读 · 1 评论 -
C++ 1012 数字分类(20 分)
注意点:1:第一个数字是指的总数字多少 审题小心2:A2可能大于0也可能小于03:n1-n2+n3-n4的表示思路(1):pow(x,y) x的y次方 (-1)^n(2):k=1 k*a k=-k4:当时写代码时没有判断cntA4是否大于0,是0的话这个表达式不成立(导致总有一部分结果错误,花了我好久去找错误原因) 自写:...原创 2018-08-26 17:13:18 · 3536 阅读 · 1 评论 -
C++ 1013 数素数(20 分)
#include<iostream>#include<math.h>using namespace std;int main(){ int i=2,j,cnt=0; bool isnum; int m,n; cin>>m>>n; while(cnt!=n) { isnum=true; for(j=2;j<...原创 2018-08-26 20:22:30 · 1340 阅读 · 0 评论 -
C++ 1014 福尔摩斯的约会(20 分)
方法1:(自写)(注意时间格式为 09:09)#include<iostream>#include<string.h>using namespace std;int main(){ char day[7][5] ={"MON","TUE","WED","THU","FRI","SAT",&quo原创 2018-08-27 10:42:31 · 853 阅读 · 0 评论 -
C++ 1015德才论(25 分)
代码来自 https://blog.csdn.net/wuhuagu_wuhuaguo/article/details/72674675#include<vector> //vector#include<algorithm> //sort#include<iostream> //bool cin cout size()using n...原创 2018-08-27 11:31:12 · 1360 阅读 · 0 评论 -
C++ 1016 部分A+B(15 分)
方法1:(自写)思路 A,B视为string型,每一位与‘0’相减所得结果与DA、DB比较#include<iostream>#include<string.h>using namespace std;int main(){ string A,B; int da,db,an,bn; int suma=0,sumb=0,ka=1,...原创 2018-08-27 15:46:54 · 662 阅读 · 0 评论 -
C++ 1017 A除以B(20 分)
问题:大数除法思路:从第一位数字开始计算,就像在草稿本上计算除法一样。#include <iostream>#include <string> using namespace std;int main(){ string a; int b; cin >> a >> b; int t, temp; int lena = ...原创 2018-08-27 16:10:36 · 1183 阅读 · 0 评论 -
C++ 1018 锤子剪刀布(20 分)
自写:一步一步判断#include<iostream>using namespace std;int main(){ int n; cin>>n; char jia,yi; int jb=0,jc=0,jj=0,yb=0,yc=0,yj=0,p=0;//甲布胜的次数 甲锤子胜利次数 甲剪刀 乙布 乙锤子 乙剪刀...原创 2018-08-27 17:02:59 · 726 阅读 · 0 评论 -
C++ 1019 数字黑洞(20 分)
注意点(1)格式问题,算式中间有空格(2) 格式很重要 都是四位数 :789应该是0789 1应该是0001(3) 有格式要求的输出用printf 比cout好用 #include<iostream>#include<string.h> //string#include<algorithm> //sort#...原创 2018-08-27 18:39:48 · 6441 阅读 · 0 评论 -
[C/C++] 1001 害死人不偿命的(3n+1)猜想 (15)(15 分)
#include<stdio.h>int main(){ int n;int cnt=0; scanf("%d",&n); while(n!=1) { if(n%2==0) { n=n/2; cnt+=1; } else { n=(3*n+1)/2; ...原创 2018-08-24 21:55:47 · 560 阅读 · 0 评论 -
C++ 1024 科学计数法(20 分)
自写(把每种情况都考虑到就行 )#include<iostream>#include<string.h>using namespace std;int main(){ string str; cin>>str; int a[10000]={0},b[10000];//系数 指数 int suma=0,sumb=0...原创 2018-08-31 09:56:52 · 3101 阅读 · 0 评论 -
[C/C++] 1002 写出这个数 (20)(20 分)
#include<stdio.h> #include<string.h>int main(){ char a[100]; char ref[10][5] ={"ling","yi","er","san","si","wu","liu","qi",&q原创 2018-08-25 20:47:15 · 2780 阅读 · 2 评论 -
c ++ 1003 我要通过!(20)(20 分)
思路:注意有规律,p之前A的个数x乘以p与t之间A的个数y等于t之后A的个数z,即x*y=z,即可迎刃而解 .... 具体步骤:1:确定P、T个数及位置,确定PAT之外的其他字母个数。判断P 、T个数是否为1,T的位置是否在P之后且中间有字母,是否有其他字母。(可以确定一部分NO)2:通过第一步,可以筛选出没有其他字母,P 、T个数为1,P和T中间至少有一个A的字符串且...原创 2018-08-24 16:28:17 · 405 阅读 · 0 评论 -
c++ 1004 成绩排名 (20)(20 分)
易错点:1:struct 最后有;2:容易掉 &3:容易忘记\n 换行 导致编译格式错误 具体代码:#include<stdio.h>#include<string.h>int main(){ int n=0; scanf("%d",&n); struct info{ ch...原创 2018-08-24 17:56:37 · 3589 阅读 · 0 评论 -
C++ 1025 反转链表(25 分)
注意:int b[100020] ; memset(b,-1,100020); //全部初始化为-1 memset 在string.h 里面(此处可不用,不过是个小知识点)思路1:自己写的(最后两个测试点报错)#include<iostream>#include<string.h>#include<vector>usin...原创 2018-08-31 20:53:14 · 2026 阅读 · 0 评论 -
C++ 1026 程序运行时间(15 分)
注意点:1 整型数字加减乘除还是整型,所以记得乘以1.00 2 四舍五入的函数为round(在math.h里面) #include<iostream>#include<math.h>using namespace std;int main(){ int c1,c2; int h,m,s; cin>>...原创 2018-08-31 22:40:57 · 2136 阅读 · 1 评论 -
C++ 1034 有理数四则运算(20 分)
1:最大公约数,最小公倍数求法 参考https://blog.csdn.net/special_hg/article/details/52450073最小公约数最简单的写法: 2: if else语句一个 if 语句后可跟一个可选的 else if...else 语句,这可用于测试多种条件。当使用 if...else if...else 语句时,以下...原创 2018-09-03 21:12:18 · 3660 阅读 · 0 评论