机试
王小蕾
菜鸡
展开
-
算法-俄罗斯编程
题目描述 小易有一个古老的游戏机,上面有着经典的游戏俄罗斯方块。因为它比较古老,所以规则和一般的俄罗斯方块不同。 荧幕上一共有 n 列,每次都会有一个 1 x 1 的方块随机落下,在同一列中,后落下的方块会叠在先前的方块之上,当一整行方块都被占满时,这一行会被消去,并得到1分。 有一天,小易又开了一局游戏,当玩到第 m 个方块落下时他觉得太无聊就关掉了,小易希望你告诉他这局游戏他获得的分数。 输入...原创 2020-03-03 12:43:09 · 306 阅读 · 0 评论 -
算法-爬楼梯(一次跳1~n阶)
一只青蛙一次可以跳上1级台阶,也可以跳上2级……它也可以跳上n级。求该青蛙跳上一个n级的台阶总共有多少种跳法。 思路: 第一下跳1阶,剩下的共有f(n-1)个方法 第一下跳2阶,剩下的共有f(n-2)个方法 … f(n)=f(n-1)+f(n-2)+f(n-3)…+f(1)+f(0) 而f(n-1)=f(n-2)+f(n-3)+…+f(0) 两边替换 f(n)=f(n-1)+f(n-1) f(n)...原创 2020-03-03 12:40:00 · 2029 阅读 · 0 评论 -
算法-爬楼梯栈溢出(大数加法,字符串加法)
吐了,一直报错,原来是因为js除法不是自动取整的…C++写多了…一直找bug 另外pop前一定要判断长度,否则undefined parseInt把字符,字符串,浮点数转成整数,只从头开始保留整数部分 字符串加法,注意临界值,即结果的最前面一位数字,有可能是进位的,所以 js除法不是自动取整的 pop前一定要判断长度,否则undefined arr.length?arr.pop() parseI...原创 2020-03-03 11:31:32 · 279 阅读 · 0 评论 -
北航2017_查找未定义变量
// 自己写的.cpp : 此文件包含 "main" 函数。程序执行将在此处开始并结束。 // #include "pch.h" #include<iostream> #include<stdio.h> #include<ctype.h> #include<string> #include<string.h> using namespa...原创 2019-07-10 00:11:00 · 418 阅读 · 0 评论 -
常用字符串
string string erase(int pos = 0, int n = npos); //删除pos开始的n个字符,返回修改后的字符串 str.erase(0,n) string insert(int p0,const string &s, int pos, int n); //在p0位置插入字符串s中pos开始的前n个字符 string insert(int p0,const ...原创 2019-07-09 16:48:18 · 1134 阅读 · 0 评论 -
记atoi
从字符串中获取数字直到非数字字符,字符串最前面的 空格 0 都不算 可以带+ - 号 同时输出123 -123原创 2019-06-26 18:15:18 · 124 阅读 · 0 评论 -
北航2016_枚举
把isdigit记成了 isnum 投机取巧了也不知道对不对 还是按着规范来心里有底 #include<stdio.h> #include<string.h> #include<ctype.h> using namespace std; struct item{ char it[50]; int val; }buf[1000]; int main(){ ...原创 2019-06-26 16:13:37 · 124 阅读 · 0 评论 -
北航2016_逆序数2
int实现 printf("%0*d\n",count,m); *为count 指定宽度 #include<stdio.h> using namespace std; int main(){ int n; while(scanf("%d",&n)!=EOF){ int t=n; int count=0; int m=0; do{ if(t%10==0...原创 2019-06-26 15:58:07 · 91 阅读 · 0 评论 -
北航2016_逆序数
又忘了每次输入后数组清空,日了,很不容易测试出来 数组清空 变量置0 #include<stdio.h> #include<string.h> #include<string> #include<math.h> using namespace std; int main(){ char n[10],m[10]; int l=0; while(s...原创 2019-06-26 15:04:34 · 85 阅读 · 0 评论 -
记scanf
scanf("%d%d",&a,&b); %d之间有没有空格都行 输入的时候 ab;a空格b; a回车b均可 scanf(" %c%c",&a,&b); 注意前面的空格 若前面有输入则会遗留\n 必加空格 或getchar() %c%c 输入必须挨着ab ;%c %c 则输入可以 a空格换行…b 如果scanf里不加空格 则所输入的空格和换行均算字符 会给...原创 2019-06-26 13:58:13 · 143 阅读 · 0 评论 -
北航2015_短文输出单词
神奇 把c转换成小写居然 又把原本的c传过去了 醉了 这种情况会产生大写字母存在且排在小写字母前的错误 另外有关字符的函数加 <ctype.h> 有关添加的操作 一定要在前面加 查找 没找到再添加 if(w[0]==0) continue; 特别重要 防止连续的非字母字符 使 传入空串 ws=0;flag=true 前者让获得单词重新开始 后者让这个flag恢复初值,不然一旦...原创 2019-06-26 12:36:08 · 107 阅读 · 0 评论 -
北航2015_窗口点击
一开始想用链表做,因为看到把窗口移到最上层,而其他窗口次序不变,很容易想到删除指定位置元素再插入到结尾,但这方面不太熟悉,又因为如何遍历比较是否处于窗口区间内头疼,遍历比较明显用数组好,最后借鉴别人的想法。 思路是在结构体添加属性 层数,重载< ,按层数从小到大排序,进入循环,从w[0]开始比较,若不成功则层数+1 ,若成功则将其层数设为1 排序并break 遇到的错误 没有立flag 如果...原创 2019-06-25 23:27:58 · 97 阅读 · 0 评论 -
北航2015_1相亲数
复制粘贴要谨慎修改,不然又没有bug,测试用例也不容易测试出来 #include<stdio.h> using namespace std; int main(){ int a,b; int aa[100],bb[100]; int size1,size2,ans1,ans2; while(scanf("%d%d",&a,&b)==2){ aa[100]={...原创 2019-06-25 19:17:13 · 163 阅读 · 0 评论 -
北航2014_2五子棋
暴力法 注意边界条件的判断 是否超出边界 printf没有& 没有& 测试文本 0 0 0 2 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 2 1 0 0 2 2 2 2 0 0 0 0 0 0 0 0 0 0 0 ...原创 2019-06-25 16:36:57 · 121 阅读 · 0 评论 -
北航2014_1阶乘题
atoi 要用 stdlib.h stoi 针对字符串 #include #include<stdio.h> #include<string.h> #include<stdlib.h> #include #include using namespace std; int fun(int x){ int y=1; if(x0) return 1; for(int ...原创 2019-06-25 15:19:06 · 128 阅读 · 0 评论