北航算法上机题目

北航算法上机题目
北航算法上机题目

算法上机1A

访问统计

时间限制:1000 ms | 内存限制:65535 KB 描述

有若干个网站,已知在某一特定星期内每个网站的日访问量情况。现在的问题是,按照网站在这一星期内的总访问量由高到低排序,并输出结果。

输入

只有一组测试数据,第一行:一个正整数N,表示将出现的网址个数。(2<=N<=50) 接下来有N行,每行有一个字符串(中间无空格),表示网址。保证N个网址互不相同。接下来有一个正整数M,表示M条记录。2<=M<=100 然后有M行,每行的有一个字符串S(长度小于100),整数T(1<=T<=7),整数V(0<=V<=100),表示网站S在星期T里有V的访问量,保证S是前面所述的N个网站中的某一个。注意:保证记录不会重复,同一网站在同一天里的记录也不会出现两次。如果某网站在某天里的记录没有出现,表明该网站在改天里的访问量为0

输出

按照网站在这一星期里的总访问量由高到低排序,访问量相同的按字典序的升序排序. 格式:网址+一个空格+访问量具体参见样例

样例输入

4

https://www.360docs.net/doc/f24175527.html,

https://www.360docs.net/doc/f24175527.html,

https://www.360docs.net/doc/f24175527.html,

https://www.360docs.net/doc/f24175527.html,

9

https://www.360docs.net/doc/f24175527.html, 1 0

https://www.360docs.net/doc/f24175527.html, 2 0

https://www.360docs.net/doc/f24175527.html, 7 100

https://www.360docs.net/doc/f24175527.html, 6 200

https://www.360docs.net/doc/f24175527.html, 1 2

https://www.360docs.net/doc/f24175527.html, 1 20

https://www.360docs.net/doc/f24175527.html, 2 6 https://www.360docs.net/doc/f24175527.html, 7 3

https://www.360docs.net/doc/f24175527.html, 6 5

样例输出

https://www.360docs.net/doc/f24175527.html, 300

https://www.360docs.net/doc/f24175527.html, 20

https://www.360docs.net/doc/f24175527.html, 8

https://www.360docs.net/doc/f24175527.html, 8

计算罚时

时间限制:1000 ms | 内存限制:65536 KB 描述

在编程啦比赛的记分板上,有一列叫做“罚时”,这个奇怪的数字究竟是怎么算出来的呢?

留意的同学可能知道,记分板的“查看记分详单”页面,有这么一段注释:

注:(X/Y) ——X表示该题提交次数,Y表示首次通过该题的时间,单位为分钟。

对通过的题计算罚时,计算方式为(X-1)*20 + Y。未通过的题不计算罚时。

具体说来,其中X表示该题首次正确提交之前(包括正确那次)该题的提交次数,比如某次上机中,豆豆同学的提交记录如下(比赛开始时间为14:30):

· B Accepted (AC) 14:52

· A Wrong Answer (WA) 14:58

· A Wrong Answer (WA) 14:59

· A Wrong Answer (WA) 15:00

· A Accepted (AC) 15:05

· C Wrong Answer (WA) 15:12

· C Wrong Answer (WA) 15:14

· C Accepted (AC) 15:15

·D Accepted (AC) 15:21

·A Presentation Error (PE) 15:32

·A Accepted (AC) 15:33

·E Time Limit Exceeded (TLE) 15:55

则对于A题,X=4(计算该题的X时无视该题AC后的提交记录以及其他题的记录),Y=35(分钟),由于通过该题带来的罚时为:(4-1)*20+35=95;

对于E题,罚时为零,因为这题始终没有通过(Accepted)。

现在,告诉你某次上机中,豆豆的所有提交记录,你能帮助豆豆计算出罚时吗?

输入

第一行为一个整数M,表示有M组数据(M<10)。

对于每组数据,第一行为一个整数N,表示共有N条提交记录(N<20)。

以下N行,每行有两个整数P、T和一个字符串S,表示第P题在比赛开始后第T分钟有一次提交(1<=P<=5,0<=T<=150),结果为S,S为以下7种情况之一(缩写):

·Accepted (AC)

·Presentation Error (PE)

·Compilation Error (CE)

·Wrong Answer (WA)

·Runtime Error (RE)

·Time Limit Exceeded (TLE)

·Memory Limit Exceeded (MLE) 详见样例,其中N条记录已按照时间顺序排列。

输出

对于每组数据输出一行,即总罚时(各题的罚时之和)。

样例输入

2

2

1 10 WA

1 15 AC

4

1 10 WA

2 15 AC

2 17 PE

2 17 AC

样例输出

35

15

基础分治法

时间限制:1000 ms | 内存限制:65535 KB 描述

这是一很经典的问题,要你计算X=Y^Z mod D,其中Y,Z的范围是:[0,2147483647], D 的范围是:[1,46340]

输入

多组测试数据,每组测试数据占一行,有三个整数Y,Z,D

输出

输出X,每组输出占一行

样例输入

3 18132 17

17 1765 3

2374859 3029382 36123

样例输出

13

2

13195

提示

分治法:

X=Y^Z mod D , Z为偶数,等价于(Y*Y)^(Z/2) mod D; Z为奇数时,等价于(Y*Y)^(Z/2) * Y mod D ;

火星

时间限制:2000 ms | 内存限制:65535 KB 描述

DJY是一个火星数学家。一天,DJY拜访地球,和地球人XiaoM在讨论数学问题。DJY 写出很多的等式(火星数学家也使用阿拉伯数字),但是XiaoM却很迷惑,因为很多等式在地球都是不成立的,比如:1+1=110,110+111=101 原来,在DJY所在的火星上,人们使用的进制不是10进制,也不是2进制,而是-2进制. “-2进制?!",XiaoM感到很奇怪。原来,-2进制是这样定义的:一个整数N(注意:可以是负整数)的-2进制表示形式是一串数字Bi(从右到左写),Bi只能为0或1,并且必须满足以下等式(地球上的等式)

N=B0+B1*(-2)+B2*(-2)^2+B3*(-2)^3+.....

.

明显,对于任何一个确定的整数N,N的-2进制表示形式都是唯一的(注意:除了0以外,首位数字(即最左边的数字)不能为0,这和地球上是一样的)。现在你的任务是,给你一个正整数N,请你输出N的-2进制表示形式. N的范围是-1,000,000,000 到1,000,000,000.

输入第一个整数是测试数据组数T(T<=100) 接下来有T行,每行一个整数N

输出

输出N的-2进制表示,具体格式见样例

样例输入

4

1

7

-2

样例输出

Case #1: 1

Case #2: 11011

Case #3: 10

Case #4: 0

提示

这里,(-2)^2 表示(-2)的2次方

跳棋小游戏

时间限制:1000 ms | 内存限制:65536 KB 描述

在一条直线棋盘上,有N个小洞,每个小洞可以放置一个跳棋。

初始状态,我们放置一些跳棋,作为初始状态。有跳棋的小洞我们用小写字母“欧”表示,即"o",没有放跳棋的小洞用"-"表示,即减号

在棋盘上,如果出现(...)-oo(...)的情况,(注意,括号表示省略,我们只关注中间部分),那么我们可以把右边的跳棋往左跳;如果出现(...)oo-(...)的情况,那么我们可以把左边的跳棋往右跳,

但是,只要跳棋A越过跳棋B,那么B就要从棋盘上拿掉,因此这两种情况在跳过之后会变成(...)o--(...)和(...)--o(...)

现在问题是,如果在一个有12个小洞的棋盘上,能得到到的最小跳棋数是多少

输入

一个整数N

代表N组数据

每组数据为12个字符,拼成一个棋盘

输出

对应每组数据最少可以得到的跳棋数

样例输入

5

---oo-------

-o--o-oo----

-o----ooo---

oooooooooooo

oooooooooo-o

样例输出

1

2

3

12

1

1B

成绩计算

时间限制:1000 ms | 内存限制:65536 KB 描述

大家都知道,今年的算法课程的期末成绩是由以下几部分组成的:

平时上机(30')

期末上机考试(30')

期末笔试(40')

加分项(大作业,算法讨论)(20')

如果这几项的和超过了100分,就按100分计算。现在,已知某位同学这几项的成绩,你能帮他计算出总分吗?

输入

第一行一个整数t,表示有t组数据

以下每行有4个整数,分别对应以上各项成绩。

输出

每组数据输出一行,即问题的答案。

样例输入

2

28 27 30 10

30 30 39 15

样例输出

95

100

提示

由于上周五上机的结果不够理想,考虑大家的整体编程能力,从这次上机开始,简单题的难度会进一步降低。对于第一次上机A、B两次题目难度不同的情况,我们在分数上会区别对待。

大家加油!

电灯泡

时间限制:1000 ms | 内存限制:65535 KB 描述

电灯泡。额。

走廊里有N个灯泡,编号为1到N,每个灯泡都由一个相应的开关控制着,每按一次该开关就会改变这个灯泡的亮灭状态,这和我们日常生活的常识是一致的。

某年某月的某一天,XiaoM和MM玩了这样一个游戏:首先,XiaoM把这N个电灯泡的亮灭状态设置为L1,L2,L3,...,LN,其中Li(1<=i<=N) 为1或0,表示灯泡为亮或灭。然后,MM进行N次操作,对于第i次操作,编号为i的倍数的灯泡的开关都会被各按一次。MM希望进行了N次操作后,灯泡的

亮灭状态为Lg1,Lg2,....,LgN (Lgi为1或0,表

示灯泡的亮或灭)。为了满足MM的要求,XiaoM一开始应该如何设置L1,L2,L3,..., LN 呢?

输入

多组测试数据

每组测试数据有两行,第一行是一个正整数N (1<=N<=10000),第二行是N个只能取0或1的整数Lg1,Lg2,...,LgN

输出

对于每组测试数据,输出L1,L2,..., LN,占一行,Li和L(i+1)之间有一个空格,行末无多余的空格

样例输入

3

1 1 1

样例输出

0 1 1

提示

scanf and printf is recommended.

the bee

时间限制:1000 ms | 内存限制:65536 KB 描述

有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。如图。

试求蜜蜂从蜂房a爬到蜂房b的可能路线数。

输入

第一行一个整数表示数据组数(多组数据),对于每组数据只一行有两个整数a,b (1≤a < b≤40)

输出

对于每组输入,输出一行,即从蜂房a爬到蜂房b的可能路线数。样例输入

1

1 5

样例输出

5

矩形图像覆盖

时间限制:2000 ms | 内存限制:65535 KB 描述

由一种大写字母围成了一个封闭的矩形,矩形的长、宽至少为3,矩形的边的厚度严格为1,如下图所示:

这是一个8x6的矩形。每条边的厚度都严格是1。对于每个矩形,围成边的大写字母只有一种。不同矩形,大写字母不同。XiaoM 有一部特殊的摄像机,他把一个RxC的矩形完整拍摄在一个NxM的底片上(R<=N,C<=M)。很明显,拍摄的位置不同,我们可以得到不同的照片,(注意:不能旋转矩形,也不能旋转底片,也即:在最后的照片里,底片还必须是N行M列,矩形还必须是R行C列,矩形还必须是完整的)例如,把上面8x6的矩形拍摄在9x7的底片上时,可以得到的全部照片如下:

图中的'.'表示透明部分,大写字母表示矩形部分、不透明的。设想将以下两张9x7的照片叠放在一起:

其中第一幅在底部,第二幅在上面,那么将会得到如下结果:

该结果中,非透明部分的面积是:32(即有32个字母)显然,如果改变这两个矩形框的在底片中的拍摄位置,那么覆盖后得到的非透明部分的面积就会不同。你的任务是,给出底片大小RxC,在底部的矩形大小N1xM1,在顶部的矩形大小N2xM2,给出覆盖后非透明部分的最大面积。

输入

多组测试数据(不超过20组)每组测试数据占一行,给出四个正整数:R C N1 M1 N2 M2 其中:3<=R,C<10, 3<=N1,N2<=R, 3<=M1,M2<=C

输出

一个整数,覆盖后的非透明部分的最大面积,每组测试数据占一行

样例输入

9 7 3 3 3 3

样例输出

16

改进版N皇后

时间限制:5000 ms | 内存限制:65535 KB 描述

某年月日,N个皇后又聚到了一起,她们不想再玩老掉牙的N皇后游戏了,于是乎,她们学会了“马”的步法……

在NXN格的国际象棋棋盘上摆放N个“加强版”皇后,使其不能互相攻击,即任意两个皇后都不能处于同一行、同一列或同一斜线上,而且,通过国际象棋中“马”的步法也不能互相攻击

“马”的攻击范围如图所示:

问在新规则下,共有多少种摆法。

输入

第一行为一个整数T,表示有T组数据。

以下T行,每行有一个整数n(0

输出

对于每组数据输出一行,即问题的答案。

样例输入

2

1 10

样例输出

1

4

算法上机2a

Eason的时光倒流

时间限制:1000 ms | 内存限制:65535 KB 描述

童年你与谁渡过、圣诗班中唱的歌,再哼一哼可以么,当时谁与你排着坐、白色恤衫灰裤子、再穿一穿可以么、遗憾我当时年纪不可亲手拥抱你欣赏、童年便相识、余下日子多闪几倍光、谁让我倒流时光一起亲身跟你去分享、能留下印象、阅览你家中每道墙、拿着你歌书、与你合唱……

Eason是一名出色的歌手,同时是一位深情的诗人、哲学家、爱情家。“时光倒流二十年”打动了无数的痴男痴女,终于,上帝也被深深感动了…于是,上帝给了Eason回到过去的机会…Wonderful and Romantic? Right?Of Course。

上帝给Eason开了n扇门,编号1到n,门的种类有两种:A类、B类。A类门能让Eason 穿越时空,回到那个她的童年,而如果Eason 很不幸进了B类门,那么Eason将还是停留在现在。Eason选择第i扇门的概率是Pi。这里保证P1+P2+…+Pn=1,并且0<=Pi<=1.上帝会给Eason最多m次的机会,每次Eason 以上述的概率分布选择一扇门,如果Eason 选中了A类门,那么能够实现时光倒流,Eason将直接回到过去。否则,Eason将还是绕回到原地,然后Eason将再以同样的概率分布选择其中一扇门(即:如果上一次Eason选择了B类的门j,那么下次选择门j 的概率还是原来的Pj)。当然,如果Eason 选择的次数达到了m次还没有回到过去,那么Eason就不能再选择了,他只能留在现在。Eason将一直随机选择某个门进入直到时光倒流或者用尽所有机会。

现在,请你帮Eason计算他回到过去的概率是多少。

输入

多组测试数据,每组测试数据占两行,第一行有两个正整数n,m (1<=n<=10,0<=m<=10),表示n扇门,Eason 有m次机会。第二行有n个浮点数Qi(1<=i<=n), 如果Qi>=0,那么表示这扇门是A类的(能回到过去),Eason选中它的概率是Pi=Qi。如果Qi<0,那么表示这扇门是B 类的(还是回到现在),并且,Eason选中它的概率是Pi=-Qi。Eason每次选择门的事件都是独立的。保证|Q1|+|Q2|+…+|Qn|=1.

输出

对于每组测试数据,输出一行,如果Eason 回到过去的概率,保留到3位小数。

样例输入

2 1

0.5 0.5

2 1

0.5 -0.5

2 1

0 -1

样例输出

1.000

0.500

0.000

扫雷英雄榜

时间限制:1000 ms | 内存限制:65536 KB 描述

说起豆豆同学在扫雷方面的造诣,那可是在整个宿舍都数一数二的~从小学开始,豆豆就对扫雷产生了浓厚的兴趣……(以下省略数万字)可是最近他遇到点小麻烦:当他把“扫雷英雄榜”刷到5', 34', 133'之后,就没再刷新过,一段时间下来,豆豆觉得很没成就感,但他又不想清除原来的记录,于是,他就把目光瞄准了室友的电脑……这天,豆豆以自己的电脑在实验室为由,借来了室友的电脑。由于室友电脑上的扫雷还没玩过,所以记录都是默认的999(单位:秒)。于是,豆豆选定高级开始扫雷。只听鼠标噼里啪啦一阵乱响,豆豆已经获胜了N 局了。现在,分别给你这N局的用时,问:豆豆一共刷新了多少次记录呢?

(注:只有本局游戏获胜且用时小于当前记录时,才算刷新一次记录)

输入

第一行为一个整数T,表示有T组数据。

每组数据中,第一行一个整数N(0

第二行有N个小于999的整数,表示获胜的每局游戏的用时。

输出

对于每组数据输出一行,即问题的答案。

样例输入

3

3

200 190 180

3

140 140 140

2

150 160

样例输出

3

1

1

合并排序

时间限制:1000 ms | 内存限制:65536 KB 描述

给出一组数,要求用合并排序的方法,求出从小到大排序后的序列。

如果只是这些,一个sort(a,a+N)就搞定了……所以,本题要求输出排序的中间结果。

给出合并排序的伪代码:(分治的思想)merge_sort(int a[], int s, int f){

如果s和f相等,则直接返回

否则{

M=(s+f)/2;

merge_sort(a, s, m);

merge_sort(a, m+1, f);

// 为保证输出的唯一性,这里规定,排序a[s~f]时,将s ~ (s+f)/2分为一段,(s+f)/2+1 ~ f分为一段

把已经排好序的a[s~m], a[m+1~f]两段合并成一段有序序列,存放在a[s~f]里(可以暂存到另一数组中,再copy过去)

///// 在这里输出排好序的a[s~f]序列,每两个数之间一个空格,末尾换行

}

}

例如:5 4 3 2 1,输出结果为:

4 5 //merge_sort(a,0,1)(注:这里是按下标从0开始写的,从1开始不会影响输出结果)

3 4 5 //merge_sort(a,0,2)

1 2 //merge_sort(a,3,4)

1 2 3 4 5 //merge_sort(a,0,4)

输入

第一行为一个整数T,表示有T组数据。

每组数据中,第一行一个整数N(2<=N<100)第二行有N个整数,表示待排序的数组。

输出

见伪代码中的描述及样例,每组数据末尾输出一个空行

样例输入

2

5

5 4 3 2 1

9

8 6 4 2 9 7 5 3 1

样例输出

4 5

3 4 5

1 2

1 2 3 4 5

6 8

4 6 8

2 9

2 4 6 8 9

5 7

1 3

1 3 5 7

1 2 3 4 5 6 7 8 9

提示

注意每组数据后输出空行(样例中未显示出最后一组的空行)

我要偷菜

时间限制:1000 ms | 内存限制:65536 KB 描述

豆豆虽然没开农场,但还是看别人玩过的。在农场里,为了得到最大的收益,除了自己辛苦种菜之外,去别人农场偷菜就成了赚钱的另一种方式。

话说某天,豆豆在周围某些同学的威逼利诱下,也开通了农场。他想迅速赚钱升级,但又不想花太多时间整天看着,于是,他开始观察大家的种菜习惯,发现每个人种菜的时间是有规律的……

设豆豆共有N个玩农场的好友,他们每人每天种菜一次,为简化问题,假设他们种的都是同一种作物,且每人每天的作物的成熟时间是固定的。由于成熟之后,其他好友也可以去偷,而且主人发现了也会一下收光,所以去晚了就偷不到了。假设对于所有好友种的菜,成熟之后T分钟之内(含第T分钟)是可以偷的,且每个好友那里只能偷1棵。给出N个好友的菜的成熟时间,你能计算出,豆豆每天至少要偷几次才能偷遍所有好友的菜吗?("偷菜一次"是指在某个时间点, 把当前所有可以偷菜的好友偷一遍, 用时忽略不计)

输入

第一行为一个整数Q,表示有Q组数据。

每组数据中,第一行两个整数N,T(0

以下N行每行一个时间字符串,格式“hh:ss”,表示每个好友的菜的成熟时间(08:00~22:00之间)。

输出

每组数据输出一行,最少偷菜的次数。

样例输入

2

3 60

11:30

11:50

12:10

3 60

12:30

12:31

11:30

样例输出

1

2

Eason演唱会

时间限制:2000 ms | 内存限制:65535 KB 描述

Eason要开演唱会了,这次他的演唱会在一个特殊的音乐厅中举行。音乐厅是一个三角形的建筑物,里面的房子也是三角形的,它具体按照下面的方式构成:

音乐厅由两个正整数N(N>=1),M(M>=2)表示,N表示音乐厅的层数,M表示每个房子的大小。音乐厅由N层组成,每层含有的房子数从上到下是1到N。建造一个大小为M的房子具体步骤如下:

首先是房顶(即第一行):

/\ (斜杠和反斜杠)

然后从i=2行到i=M-1行,它由一个’/’(斜杠)、2*(i-1)个空格、一个‘\’(反斜杠)组成。

对于最后一行(第M行),它由一个’/’(斜杠)、2*(M-1)个’_’(下划线)、一个’\’(反斜杠)。

对于第1行到第M-1行,需要在前面添加多余的空格,使得房子看起来如下所示:

.../\

../..\

./....\

/______\

(上面的’.’(点) 表示添加的多余的空格,注意每行的末尾没有多余的空格)

对于N层的音乐厅,它的第i行有i个房子,如下所示(示例中已经用’.’代表空格)

N=1,M=2时,音乐厅如下所示

./\

/__\

N = 2 , M = 2时:

.../\

../__\

/\../\

/__\/__\

N = 3 , M = 2 时

...../\

..../__\

.../\../\

../__\/__\

./\../\../\

/__\/__\/__\

现在,给出M和N,需要你构建出这个音乐厅。

输入

有多组测试数据,每组测试数据有两个整数M(1

输出

对于每组测试数据,首先输出一行”Eason’s music hall T looks like this:”其中T表示第几组测试数据,然后输出音乐厅的样子,每组数据输出后再输出一个换行。具体参照样例。

样例输入

2 1

2 2

3 3

0 0

样例输出

Eason's music hall 1 looks like this:

/\

/__\

Eason's music hall 2 looks like this:

/\

/__\

/\ /\

/__\/__\

Eason's music hall 3 looks like this:

/\

/ \

/____\

/\ /\

/ \ / \

/____\/____\

/\ /\ /\

/ \ / \ / \

/____\/____\/____\

算法上机2B

递归Eason

时间限制:2000 ms | 内存限制:65535 KB 描述

Eason(n)函数是这样定义的:

If n<=100, then Eason(n) = Eason(Eason(N+11));

If n>=101, then Eason(n) = n-10.

给出n,请你计算一下Eason(n)的值,并输出在计算过程中一共调用了多少次Eason函数

输入

多组数据,每组数据占一行,一个整数n

输出

每组数据输出一行,两个整数Eason(n)的值,以及Eason函数在计算过程中被调用总次数。结果均在int范围内

样例输入

80

120

样例输出

91 43

110 1

蜗牛

时间限制:2000 ms | 内存限制:65535 KB 描述

我要一步一步往上爬等待阳光静静看着它的脸小小的天有大大的梦想重重的壳裹着

着轻轻的仰望

我要一步一步往上爬在最高点乘着叶片往前飞小小的天留过的泪和汗总有一天我有属于我的天

我要一步一步往上爬在最高点乘着叶片往前飞任风吹干留过的泪和汗

我要一步一步往上爬等待阳光静静看着它的脸

小小的天有大大的梦想我有属于我的天

任风吹干留过的泪和汗

总有一天我有属于我的天

仅以此歌词,赠给所有追梦中的人。

下面,我们开始做题~

蜗牛在6米高的塔底,它想爬到塔尖。当第一天白天太阳出来的时候,它能向上爬3米,但是当晚上黑夜的时候,它需要睡觉,然后就会下滑1米。

另外,蜗牛的体力也是会消耗的,体力消耗有一个系数,假设是10%,也就是说,以后每过一天,蜗牛在白天能爬的高度就会减少10%*3=0.3米,

那么,在哪一天,蜗牛能爬到塔顶呢?或者说,在哪一天的某一时刻蜗牛的爬过的高度第一次超过6米。

这里:一天是白天和晚上。

在这个例子中,蜗牛的爬行情况如下:

塔高6米

第1天原来的高度是0米白天上爬的高度3米上爬后的高度3米晚上下滑后的高度2米第2天原来的高度是2米白天上爬的高度2.7米上爬后的高度4.7米晚上下滑后的高度3.7米

第3天原来的高度是3.7米白天上爬的高度2.4米上爬后的高度6.1米

所以蜗牛在第3天就可以爬到塔顶

现在希望你计算一下,蜗牛在哪天能够爬上塔顶,或者哪天会落回到塔底(即蜗牛的高度变为负值)

输入

多组测试数据,每组占一行,四个整数H,U,D,F. 如果H=0,表示输入结束。

否则,这四个整数都将在1到100之间,H 是塔的高度(单位:米),U是蜗牛第一天白天能爬的高度,D是蜗牛每天晚上睡觉时会下滑的高度,

F表示体力消耗系数的百分数(即:体力消耗系数为F%,)

注意:蜗牛白天永远也不会爬一个负的高度。如果蜗牛太累了,体力消耗系数使得蜗牛白天爬的高度小于0,那么蜗牛白天就不会再向上爬了。

而不管蜗牛白天爬了多少高度,晚上蜗牛睡觉时会下滑的高度都是D米。

输出

对每组测试数据输出一行,说明蜗牛在第几天爬上塔顶(某时刻高度严格>H),或者在第几天遗憾地回到塔底(高度严格<0)。格式参照样例输出。

样例输入

6 3 1 10

10 2 1 50

50 5 3 14

50 6 4 1

50 6 3 1

1 1 1 1

0 0 0 0

样例输出

success on day 3

failure on day 4

failure on day 7

failure on day 68

success on day 20

failure on day 2

选址

时间限制:1000 ms | 内存限制:65535 KB

描述

Eason在考虑为音乐厅选址,他将问题抽象为以下数学题:

给出n个非负整数(X1, X2, …, Xn), 应该如何确定一个整数A,使得以下式子:

(|X1-A| + |X2-A| + … … + |Xn-A|)

取最小值。

输入

多组测试数据,每组测试数据,每组测试数据的第一个整数是n (0

输出

对每组测试数据输出一行,2个整数A,B. 其中,A是使(|X1-A| + |X2-A| + ……+ |Xn-A|) 取最小值的最小整数,B表示X1,X2,..,Xn里有多少个整数可以使得这个式子的值取得最小。

样例输入

2

10

10

4

1

2

2

4

样例输出

10 2

2 2

被风吹过的夏天

时间限制:2000 ms | 内存限制:65535 KB 描述

2008年,那个被风吹过的夏天,恰同学少年的日子,青涩的年华,却再也回不去了...

我幸运地认识了你,或许是前世五百次的回眸~ 或许比这还多。

我们有时候都会去教室上晚自习,我们住在不同的宿舍(当然),然而,幸运的是,我们去上晚自习时都要经过校园里那个熟悉的路口,那个转角,

然而不幸的是,你我都不总是每天都去自习,我也鼓不起勇气,问你什么时候会去上自习,所以,我可能不可以每天都在那个路口遇到你,尽管我每次去上自习时,都会以最早的时间在那个路口等你最长的时间,所以我知道,只要我们同一天去自习,我就可以在那个转角的路口遇到你,然后上前对你说:“嗨,这么巧~”。

你只告诉过我,你一星期里有几天晚上会去自习,我想知道,我有多少概率会在那个转角遇到你。

一星期有7天(最多7次晚自习),给出我每天去不去上晚自习的情况,然后给出你一星期里上晚自习的天数m(0<=m<=7),假设你选择这7天里哪m天去上晚自习是等概率的,也就是说,你选择集合Set1:

Set1={D1,D2,…,Di,…,Dm}(1<=Di<=7,Di互不相同,1<=i<=m)

还是选择另一个和Set1不同的集合Set2:

Set2={B1,B2,…,Bi,…,Bm}(1<=Bi<=7,Bi互不相同,1<=i<=m)

作为去自习的日子是等概率的。

输入

多组测试数据,每组测试数据有两行。第一行有一个整数m(0<=m<=7)表示你一星期里去晚自习的天数,第二行有7个整数Qi(1<=i<=m,Qi=0,1),如果Qi为0,表示第i 天我不去自习,否则(Qi=1),则表示第i天我

回去自习。

输出

对每组测试数据输出一行,即我能遇到你的概率,保留3位小数。

样例输入

1

1 0 0 0 0 0 0

样例输出

0.143

礼物

时间限制:5000 ms | 内存限制:65535 KB 描述

我答应过你要送你礼物的。嗯,现在是兑现的时候了。

我在商场获得了一张购物券,价值P元。我带着你来到商场,寻找适合你的礼物。

遗憾的是,我们发现,这张购物券所能买的东西是有限的。只能用该购物券支付n种商品,编号1到n

这些商品的价格是w[1],...,w[n]。

我们不会买两件同一种类的商品。即每种商品最多买一件。

购物券是不找零的,你告诉我,我们不能浪费,所以,我们要么刚好花完购物券里的所有钱,要么不用它购买东西。

那我想知道,我们最多能买多少件商品。

输入

多组测试数据。每组测试数据占两行。第一行两个整数,P(0<=p<=100)和n(1<=n<=10),表示购物券的面额以及能购买的商品种类。接下来有n个整数:w[1],...,w[n],表示这n 种商品的价格( 0<=w[i]<=1000)

输出

如果能够刚好用完这P元的购物券,输出最多能买的商品数目

否则输出0 样例输入

3 4

1 2 1 2

80 3

10 10 10

0 2

0 1

0 3

0 0 8

样例输出

2

1

2

算法上机3a

转义字符'\'

时间限制:1000 ms | 内存限制:65536 KB 描述

转义字符是 C 语言中表示字符的一种特殊形式。通常使用转义字符表示ASCII 码字符集中不可打印的控制字符和特定功能的字符,如用于表示字符常量的单撇号('),用于表示字符串常量的双撇号(")和反斜杠(\)等。转义字符用反斜杠(\)后面跟一个字符或一个八进制或十六进制数表示。

\a 响铃(BEL)

\b 退格(BS)

\f 换页(FF)

\n 换行(LF)

\r 回车(CR)

\t 水平制表(HT)

\v 垂直制表(VT)

\\ 反斜杠

\? 问号字符

\' 单引号字符

\" 双引号字符

\0 空字符(NULL)

\ddd 任意字符(ddd 为三位八进制数)

\xhh 任意字符(hh 为二位十六进制数)特别的是,若(\)后面跟了3 个'0' ~ '7' 的

字符,那么这3 个'0' ~ '7' 的字符会被看做一个三位八进制数,然后这四个字符(\ 加上后面跟的3 个字符)会被转义为ASCII 码等于这个三位八进制数的字符。

比如'\060' 则会转义为'0' 因为'0' 的ASCII 码为48,而48 转成八进制显示就是60。

现在的问题是:如果给你一个未转义的字符串(字符串中的字符都是可见字符,且不包含空格和制表符,这个字符串中每个(\)后面一定会跟3 个'0' ~ '7' 的字符),希望你将这个字符串转义后的结果输出。

输入

输入包含多组数据。

每组数据占一行,为给定的未转义的字符串,长度都不超过400。

输入以一行end 结束,这组数据不需要输出(详见样例)。

输出

对于每组数据,输出其转义后的结果,保证每个转义后的字符都是可打印字符。每组数据占一行。

样例输入

a\060\061

end.\100\101\102\103

\150\145\154\154\157word

\145\156\144

END

end

样例输出

a01

end.@ABC

helloword

end

END

隐藏的"ICPC"

时间限制:1000 ms | 内存限制:65536 KB 描述Given a string of uppercase letters, is it possible to erase ONE OR MORE characters to get the string 'ICPC'?

输入

The first line contains a single integer T (1 ≤T ≤15), the number of test cases. Each test case is a single line containing at least 1 and at most 50 uppercase letters. There are no spaces, TABs, lowercase letters or other characters before or after the string.

输出

For each test case, print the case number and 'Yes' if it is possible to get 'ICPC', or 'No' otherwise. The output is case-sensitive, so don't output 'YES' or 'yes' when 'Yes' should be output.

样例输入

4

ACMICPC

ACMICCP

HELLOWORLD

IXXCXXPXXCXX

样例输出

Case 1: Yes

Case 2: No

Case 3: No

Case 4: Yes

Jump Jump Jump

时间限制:1000 ms | 内存限制:65536 KB 描述

VelV这几天特别高兴,因为她终于把滑雪的问题解决了!!!

当然,她并没有骄傲自满。这回她又遇到了一个关于体育运动的问题:跳木桩。跳木桩是一种古老的运动。远古部落在祭祀的时候,都会举行这种运动,祈求和平。他们把一些高度各异的木桩整齐地排列在一条直线上。而运动员必须从左向右跳跃,并且只能落到更高或者等高的木桩上(VelV注意到了这和

滑雪正好相反)。

注意:木桩都放的非常接近,而且部落里挑选出来的运动员弹跳非常好,他们可以轻易地跳过任意个木桩,安全的落到要求的木桩上。

最后,裁判看谁踩踏过的木桩最多,就判谁获胜。

输入

多组输入,第一个正整数T表示组数。

每组第一行有一个正整数n,1≤n≤1000表示木桩个数。

第二行为h1,h2,…,hn共n个非负数(在int32范围内),表示从左向右排列的木桩高度

输出

每组第一行,输出最多可以踩踏过的木桩数

样例输入

2

3

1 2 3

5

2 5

3 3 6

样例输出

3

4

Money

时间限制:1000 ms | 内存限制:65536 KB 描述

人民币中有以下以“元”为单位的面额:

1元2元5元10元20元50元100元

现在你手上有每种面额的钱币若干张,请计算出最少需要多少张,使得正好总金额为p。输入

每行一个整数p (0 < p <= 10000),为需要的总金额数。输入以0 结尾。

输出

对每个输入,输出对应的最少张数。

样例输入

42

3

样例输出

3

2

Merry Christmas

时间限制:1000 ms | 内存限制:65536 KB 描述

圣诞节快到了,Jimmy 买了好多礼物准备送给他的朋友们,他想把价格为S1 的礼物送给第 1 个朋友,价格为S2 的礼物送给第2 个朋友.....以此类推,他想把价格为Si 的礼物送给第i 个朋友。但是他买的礼物太多了,以至于他忘了是否存在价格为Si 的礼物。幸运的是Jimmy 把购物清单留了下来。现在告诉你Jimmy 购买的n 件礼物的价格,以及他想要送的m 件礼物的价格,他想知道他能否从买的n 件礼物中挑出那m 件送给他的朋友们。如果能的话就告诉他“YES”, 否则告诉他“NO”。

输入

输入包含多组数据。

对于每组数据,第一行为两个正整数n 和m (0 < n , m <= 100000),分别为买的礼物的件数和想要送的礼物件数。第二行n 个正整数,为买的n 件礼物的价格。第三行m 个正整数,第i 个数代表想要送给第i 个朋友的礼物的价格。(价格都在231以内)当n = m = 0 时输入结束。

输出

每一组数据输出一行,如果能则输出“YES”,否则输出“NO”。

样例输入

10 4

1 2 3 4 5 6 7 8 9 10

2 3 5 90

10 3

1 2 3 4 5 78 33 22 2 1

2 2 4

0 0

样例输出

NO

YES

算法上机3b

Oh yeah~ water problem~ Chinglish?

时间限制:1000 ms | 内存限制:65536 KB 描述

每一本正式出版的图书都有一个ISBN号码与之对应,ISBN码包括9位数字、1位识别码和3位分隔符,其规定格式如“x-xxx-xxxxx-x”,其中符号“-”是分隔符(键盘上的减号),最后一位是识别码,例如

0-670-82162-4就是一个标准的ISBN码。ISBN 码的首位数字表示书籍的出版语言,例如0代表英语;第一个分隔符“-”之后的三位数字代表出版社,例如670代表维京出版社;第二个分隔之后的五位数字代表该书在出版社的编号;最后一位为识别码。

识别码的计算方法如下:

首位数字乘以1加上次位数字乘以2……以此类推,用所得的结果mod 11,所得的余数即为识别码,如果余数为10,则识别码为大写字母X。例如ISBN号码0-670-82162-4中的识别码4是这样得到的:对067082162这9个数字,从左至右,分别乘以1,2,…,9,再求和,即0×1+6×2+……+2×9=158,然后取158 mod 11的结果4作为识别码。

你的任务是编写程序判断输入的ISBN号码中识别码是否正确,如果正确,则仅输出“Right”;如果错误,则输出你认为是正确的ISBN号码(修改识别码)。

输入

输入的第一行是数据的个数。接下来每行是一个字符序列,表示一本书的ISBN号码(保证输入符合ISBN号码的格式要求)。

输出

对每组数据,假如输入的ISBN号码的识别码正确,那么输出“Right”,否则,按照规定的格式,输出正确的ISBN号码(包括分隔符“-”)。

样例输入

2

0-670-82162-4

0-670-82162-0

样例输出

Right

0-670-82162-4

三角形取数

时间限制:1000 ms | 内存限制:65536 KB 描述

7

3 8

8 1 0

2

7 7 4

5 5 2

6 5

Alex很喜欢收集古董,一次电视台邀请Alex 做游戏,做游戏的同时还有古董派送,Alex 兴冲冲的去了。

游戏规则是这样的:如上是一个三角形宝塔形地图。Alex只能从宝塔顶层出发,每一步可沿左斜线向下或右斜线向下走,走到每一个位置拿到对应位置数目的古董。Alex只能

从最顶层走到最底层。假设三角形行数≤100,输出Alex最多能拿到的古董数量。

输入

第一行一个整数T,表示有T组测试数据。

对于每组测试数据:第一行是三角形的行数N。以后的N行分别是从最顶层到最底层的每一层中的数字。

输出

对于每组测试数据输出一行:Alex能拿到的最多古董数。

样例输入

1

5

7

3 8

8 1 0

2 7 7 4

5 5 2

6 5

样例输出

30

提示

动态规划~

细胞计数~~

时间限制:1000 ms | 内存限制:65540 KB 描述

有种生物的细胞要不然分裂成2个,要不然不分裂。当所有的细胞都分裂完成

之后,生物体便成熟了。

我们为在分裂过程中的每个细胞编上号,例如下图示,生物体从细胞0开始分

裂,分成1和2,细胞1分成3和4.不再分裂,所以该生物体成熟且其共含有3 个细胞-2,3,4.

在分裂过程中,假设我们杀死一个细胞,那么它或它的后代将从成熟生物体

中消失。如下图示,这时成熟生物体只含一个细胞-2.

输入

输入第一行包含一个整数T,表示有T组测试数据;

对于每组测试数据:

第一行是一个整数N,代表生物体分裂过程中一共出现了N个细胞,

下面N个数,构成一个int数组,其中数组的下标表示细胞的编号,而数字本身

代表它的父细胞(即它是由谁分裂而成的)

下面一行一个整数,代表杀死的某一个细胞。

输出

对于每组数据,

输出一行,为最后成熟生物体的细胞总数。

样例输入

3

5

-1 0 0 1 1

1

5

-1 0 0 1 1

2

5

-1 0 0 1 1

样例输出

1(图例)

2

最小搜索代价

时间限制:1000 ms | 内存限制:65536 KB 描述

对于一棵二叉树,如果其中所有节点都满足性质“其左子树中的所有节点的值都小于他自己的值,且其右子树中所有节点的值都大于他自己的值”,那么这棵二叉树就是一棵二叉搜索树。

对于一棵有n 个节点的二叉搜索树,若树中n 个节点的值分别为e1、e2、...、en(e1 < e2 < ... < en),且值为ei 的节点的搜索频率为f(ei),那么可以定义这棵二叉搜索树的搜索代价为:

f(e1) * deep(e1) + f(e2) * deep(e2) + ... + f(en) * deep(en)

其中deep(ei) 为值为ei 的节点在树中的深度(根节点的深度为0)。

显然,如果调整这棵二叉搜索树的结构(当然前提是要保持其满足二叉搜索树的结构性质),其搜索代价就会随之改变。并且肯定可以通过一系列的调整,使这棵二叉搜索树的搜索代价达到最小值。现在问题就是:这个最小值是多少。

输入

输入包含多组数据。

每行一组数据,以数字n 开头(0 < n <= 250),为二叉搜索树中的节点个数,紧接着n 个正整数,代表f(e1)、f(e2)、...、f(en)。当n = 0 时输入结束。

输出

每组数据输出一行,为可以达到的最小搜索代价,保证在231 以内。

样例输入

1 5

3 10 10 10

3 5 10 20

样例输出

0 20

20

提示

动态规划~

小鸟~

时间限制:2000 ms | 内存限制:65535 KB 描述

在生物学领域,有估计在一个特定地区的人口规模的几种方法。我们现在要估算一个地区的鸟类种群数量。我们将使用下面的方法。

我们一共收集d天数据。最初,所有的鸟都没有标记。每一天我们都会抓c只鸟,如果它没有被标记,我们将标记它。如果一只鸟已经被标记,则不管它们。然后,我们把它们全部放掉。

数据收集结束后,我们可以估计鸟类种群规模。

这里共有s只鸟,假设已经收集数据h天,求现在有m只鸟已经被标记的概率是多少假设每只鸟,不管标记与否被抓住的概率是完全一样的。

输入

输入第一行包含一个整数T,表示有T组测试数据;

对于每组测试数据:

下面有4个整数s(1

输出

对于每组数据,

输出一行,为所求概率(保留4位小数)

样例输入

2

3 1 5 1

5 3 2 4

样例输出

0.0123

0.6000

算法上机4a

我很诚实

时间限制:1000 ms | 内存限制:65536 KB 描述

关于“过份借鉴别人代码”的问题,不知道上次XiaoM学长的那封邮件是否说服了你(当然,这里指的只是少数同学),由于上机是按排名计分的,所以假如你通过不恰当的方式提高了你的排名,同时也就降低了其他同学的分数。不多说了,这次换一种方式,请看下面这条声明:

“我在这次上机中,不会使用别人的代码,也不会把自己的代码发给3921任何人,否则,甘愿受到惩罚。”

如果你确信你能做到,请输出Yes,否则输出No。

注:本次上机中,符合以下两点的同学将被记为-5分(5分制):

a. 通过了A题(即这道题)

b. 某次提交与另一账号的提交记录出现代码雷同(雷同包括完全一样,只改了变量名或格式,和其他足以判断出雷同的情况)

(如果你的代码确实是自己写的,没有使用别人的代码或把代码发给同学,又被查出雷同,可以在雷同名单公布后给我们发邮件说明原因,我们会和宋老师讨论后决定怎么给分)也就是说,如果你选择不做这道题(A题),那么这次上机你将不受到代码雷同的影响,慎重决定吧……

输入

输出

输出一行:“Yes”或者“No”(不含引号)

样例输入

(空)

样例输出

(如上所述)

寻宝

时间限制:1000 ms | 内存限制:65536 KB 描述

在一片原始森林中,埋藏着很多宝石,一位探险者背包前往。在探险者看来,每颗宝石都有固定的价值,宝石越小价值越高。现在他想知道,在背包容量的限制下,他一次最多可以带走多大价值的宝石呢?

输入

多组测试数据

每组数据3行,第一行2个整数n (0 <= n <=10000 ), w (0 <= w <=500000 )。表示宝石个数和背包空间。

第二行n个整数vi (i=1,2,……n),表示第i 个宝石的价值。(0<= vi<=10000)

第三行n个整数ti (i=1,2,……n),表示第i 个宝石的体积。(1<= ti <= w)

数据以-1 -1结束,不必输出结果。

输出

对每一组数据输出一个整数,即能够得到的宝石的最大总价值。

样例输入

4 7

2 3 4 5

5 4 3 2

-1 -1

样例输出

9

最少钱币张数

时间限制:1000 ms | 内存限制:65536 KB 描述

给出某国货币的所有面值,现在你手上有每种面额的钱币若干张,请计算出最少需要多少张,使得正好总金额为s。

输入

多组数据

每组数据第一行为两个整数n,s(0

第二行有n个互异的正整数,表示某国货币的面值(int范围内)。

输出

每组数据输出一行,即对应的最少钱币张数。如果无解,则输出-1。

样例输入

1 2

1

3 10

2 4 6

样例输出

2

2

看电影

时间限制:1000 ms | 内存限制:65536 KB 描述

看电影是豆豆同学的一大爱好,无论是周末还是平时,只要有喜欢的电影,豆豆绝不轻易放过。当然,豆豆同学还是很热爱学习的,所以他给自己规定,相邻两次看电影的间隔至少为T天(eg. 第1天与第3天的间隔为1天)

对于每一天,无论是否看电影,豆豆都会得到一个快乐值( Be happy every day~~ ) 由于每天上映的电影不同,所以豆豆选择第i天或第j天看电影,得到的快乐值可能是不同的;又因为每天的课程安排,有没有算法上机(^_^),有没有物理实验(>_<)等,也是不同的,所以豆豆选择第i天或第j天不看电影,得到的快乐值也可能是不同的。

设连续的N天里,第i天看电影与不看电影对应的快乐值分别为a[i],b[i] ,现在豆豆想知道,他该如何安排看电影的时间,才能得到最大的快乐值呢?

输入

多组数据

对于每组数据,第一行为两个整数N,T (0

第二行为N个整数,对应每个a[i]

第三行为N个整数,对应每个b[i]

其中0<=a[i],b[i]<=100000

输出

对于每组数据输出一行,即问题的答案。

样例输入

3 1

1 1 1

2 2 2

3 1

2 2 2

1 1 1

3 1

2 4 2

1 1 1

样例输出

北航最优化方法大作业参考

北航最优化方法大作业参考

1 流量工程问题 1.1 问题重述 定义一个有向网络G=(N,E),其中N是节点集,E是弧集。令A是网络G的点弧关联矩阵,即N×E阶矩阵,且第l列与弧里(I,j)对应,仅第i行元素为1,第j行元素为-1,其余元素为0。再令b m=(b m1,…,b mN)T,f m=(f m1,…,f mE)T,则可将等式约束表示成: Af m=b m 本算例为一经典TE算例。算例网络有7个节点和13条弧,每条弧的容量是5个单位。此外有四个需求量均为4个单位的源一目的对,具体的源节点、目的节点信息如图所示。这里为了简单,省区了未用到的弧。此外,弧上的数字表示弧的编号。此时,c=((5,5…,5)1 )T, ×13 根据上述四个约束条件,分别求得四个情况下的最优决策变量x=((x12,x13,…,x75)1× )。 13 图 1 网络拓扑和流量需求

1.2 7节点算例求解 1.2.1 算例1(b1=[4;-4;0;0;0;0;0]T) 转化为线性规划问题: Minimize c T x1 Subject to Ax1=b1 x1>=0 利用Matlab编写对偶单纯形法程序,可求得: 最优解为x1*=[4 0 0 0 0 0 0 0 0 0 0 0 0]T 对应的最优值c T x1=20 1.2.2 算例2(b2=[4;0;-4;0;0;0;0]T) Minimize c T x2 Subject to Ax2=b2 X2>=0 利用Matlab编写对偶单纯形法程序,可求得: 最优解为x2*=[0 4 0 0 0 0 0 0 0 0 0 0 0]T 对应的最优值c T x2=20 1.2.3 算例3(b3=[0;-4;4;0;0;0;0]T) Minimize c T x3 Subject to Ax3=b3 X3>=0 利用Matlab编写对偶单纯形法程序,可求得: 最优解为x3*=[4 0 0 0 4 0 0 0 0 0 0 0 0]T 对应的最优值c T x3=40

计算方法复习题

复习试题 一、填空题: 1、????? ?????----=410141014A ,则A 的LU 分解为 A ??? ?????????=? ???????????。 2、已知3.1)3(,2.1)2(,0.1)1(===f f f ,则用辛普生(辛卜生)公式计算求得 ?≈3 1 _________ )(dx x f ,用三点式求得≈')1(f 。 3、1)3(,2)2(,1)1(==-=f f f ,则过这三点的二次插值多项式中2 x 的系数为 , 拉格朗日插值多项式为 。 4、近似值*0.231x =关于真值229.0=x 有( )位有效数字; 5、设)(x f 可微,求方程)(x f x =的牛顿迭代格式是( ); 6、对1)(3 ++=x x x f ,差商=]3,2,1,0[f ( ),=]4,3,2,1,0[f ( ); 7、计算方法主要研究( )误差和( )误差; 8、用二分法求非线性方程 f (x )=0在区间(a ,b )内的根时,二分n 次后的误差限为( ); 9、求解一阶常微分方程初值问题y '= f (x ,y ),y (x 0)=y 0的改进的欧拉公式为( ); 10、已知f (1)=2,f (2)=3,f (4)=5.9,则二次Newton 插值多项式中x 2系数为( ); 11、 两点式高斯型求积公式?1 d )(x x f ≈( ),代数精度为( ); 12、 解线性方程组A x =b 的高斯顺序消元法满足的充要条件为()。 13、 为了使计算 32)1(6)1(41310-- -+-+ =x x x y 的乘除法次数尽量地少,应将该表

2015年北京航空航天大学飞行器设计历年真题,心得分享,考研大纲,考研笔记,复试真题

北航考研详解与指导 一.飞行器设计 对于本校的学生来说,每年复试的内容可能会不太一样,所以具体的准备还是以到时学校通知为主,这里主要介绍去年的复试,仅供参考。2012年飞行器设计专业复试分为笔试和面试,笔试又分为专业课和专业英语。专业课考的是航天器动力学基础,给了一本参考书是肖叶伦教授的《航天器建模**》之类的,具体名字不太记得了,北航本校本专业的学生可以直接用赵育善老师航天器飞行动力学课的教材,内容基本是一样的。把这本书好好的看一遍就可以了,一个星期绝对没有问题,因为考试考的也都是比较基础的东西,看懂概念,轨道六要素,欧拉角、奇点问题,摄动,航空航天器的分类,还有几个坐标系转换,基本都是概念,动力学方程以及复杂的公式都不会考,四元数的计算也不会考。有条件的同学想办法找一下赵育善老师那门课往年的期末考试题,可以作为参考。跨专业的、以前没接触过航天课程的同学,如果看不懂书可以去找一下你联系的导师,让他安排个学生给你稍微指点一下。专业英语的话考的是翻译,给了几段中文和英文,汉译英以及英译汉,每一段都不长,都是跟航天知识有一些关系的,准备的话上网搜索一些航天相关词汇背一背就好,当然也不用找特别专业的词汇,毕竟考试中的那些单词还都是平时读文献会比较常用到的。 面试的话也不用很紧张,基本都是先简单的介绍一下自己(只有中文,没有英文介绍),问问你跟的导师是谁,四六级考了多少分,如实回答就可以。北航的同学会很快,老师问什么你答什么就行了。外校的同学老师会再问一下你本科参加竞赛的情况,或者是毕业设计的内容,在本科期间参加的重要活动什么的。总之面试其实是个很简单的事,完全不必担心,放松心态正常交流就行了。 最后提一下,其实复试并没有那么难,大家能够通过初试,都是从成千上万同龄人中脱颖而出的佼佼者,应付这么一个小考试完全没有问题。而且我留意了一下,复试名单是按照初试成绩的名次排列的,经过复试之后,前面二三十个人的名次是完全没有变化的,复试的目的只是为了从后几名中筛选一下,所以初试成绩比较高的同学只要稍加准备正常发挥就行了,不用担心的太多。 二.航天导航制导与控制 首先简单介绍一下去年复试的情况,去年是王新龙老师管招生,复试有专业英语翻译和专业笔试,笔试上的内容都是本科传感器那门课的课件里的,去年进入复试的录取率大概在百分之八十多,录取了20人,其中专业硕士和学术硕士的比例是1:1,今年未知,估计是王可东、宋佳、杨博等老师,估计只有面试,没有笔试,面试需要有一个5分钟的英文自我介绍,之后对于本校的来说,一般不会问专业性问题,都是聊聊本科时候的表现,问问你研究生打算之类的,一般都是你的导师主要问,其他老师偶尔插一句,对于外校的来说,也是先英文自我介绍,然后如果导师定下来的话,也是导师主要问问题,可能会问一些专业性的问题,但大部分都是很开放的,比如王新龙老师会问惯性导航平台和捷联的区别联系,材料力学和理论力学哪个更基础,也会有老师问一些其他无关的问题,比如为什么要来GNC等等。王新龙老师建议大家准备复试的时候重点花在对英语自我介绍的完善以及导航制导控制转业的理解上。 2015年考研复试在即,面对又一轮的考研挑战,同学们不仅要面对像初试时所要准备的专业

最优化方法大作业答案

1.用薄钢板制造一体积5m 3,长度不小于4m ,无上盖的货箱,要求钢板耗量最小。确定货箱的长x 1、宽x 2和高x 3。试列出问题的数学模型。 解:min 32312122x x x x x x z ++= s.t 5321=x x x 41≥x 0,,321≥x x x 2.将下面的线性规划问题表示为标准型并用单纯形法求解 max f=x 1+2x 2+x 3 s .t .2x 1+x 2-x 3≤2 -2x 1+x 2-5x 3≥-6 4x 1+x 2+x 3≤6 x i ≥0 i=1,2,3 解:先化标准形: Min 321x x x z -+= 224321=+-+x x x x 6525321=++-x x x x 646321=+++x x x x 列成表格:

1 2 1 610011460105122001112----- 可见此表已具备1°,2°,3°三个特点,可采用单纯形法。首先从底行中选元素-1,由2/2,6/2,6/4最小者决定选第一行第一列的元素2,标以记号,迭代一次得 1 2 1 2102310401162010021212 11-------- 再从底行中选元素-2/3,和第二列正元素1/2,迭代一次得 1 2 12 32 30 210231040116201002121211- ------ 再从底行中选元素-3,和第二列正元素2,迭代一次得 4 2 3 3 410120280114042001112--- 再迭代一次得 10 2 30 2 10 6 221023 1010213000421021013-- 选取最优解:

计算方法习题

《计算方法》练习题一 练习题第1套参考答案 一、填空题 1. 14159.3=π的近似值3.1428,准确数位是( 2 10- )。 2.满足d b f c a f ==)(,)(的插值余项=)(x R ( ))((!2) (b x a x f --''ξ ) 。 3.设)}({x P k 为勒让德多项式,则=))(),((22x P x P (5 2 )。 4.乘幂法是求实方阵(按模最大 )特征值与特征向量的迭代法。 5.欧拉法的绝对稳定实区间是( ]0,2[-)。 二、单选题 1.已知近似数,,b a 的误差限)(),(b a εε,则=)(ab ε(C )。 A .)()(b a εε B.)()(b a εε+ C.)()(b b a a εε+ D.)()(a b b a εε+ 2.设x x x f +=2 )(,则=]3,2,1[f ( A )。 A.1 B.2 C.3 D.4 3.设A=?? ? ? ??3113,则化A为对角阵的平面旋转=θ( C ) . A. 2π B.3π C.4π D.6 π 4.若双点弦法收敛,则双点弦法具有(B )敛速. A.线性 B.超线性 C.平方 D.三次 5.改进欧拉法的局部截断误差阶是( C ). A .)(h o B.)(2 h o C.)(3 h o D.)(4 h o 三、计算题 1.求矛盾方程组:??? ??=-=+=+2 42321 2121x x x x x x 的最小二乘解。 2 212 212 2121)2()42()3(),(--+-++-+=x x x x x x x x ?, 由 0,021=??=??x x ? ?得:???=+=+9 629232121x x x x , 解得14 9 ,71821== x x 。

北航计算机复试 06-14上机真题及答案

北京航空航天大学计算机系考研 复试06-14上机真题及答案 复试上机指导 1.本真题只是提供辅助作用,关键还是研友平时动手能力练习和对 算法、数据结构的理解,参加过ACM的有一定优势没参加过 的也不用紧张,北航的上机题相对于清华和北大,难度上小很 多,多练习的话,问题不大; 2.上机时,可以快速阅读所有的题目,按照从易到难的次序做题, 保证会的一定得分; 3.熟悉编程环境,熟悉c的常用函数; 4.为了快速测试代码的正确性,尤其是矩阵输入的情况,可以利用 标准输入重定向, freopen(“c:\\input.txt”,”r”,s tdin);加快测试过 程; 5.注意程序边界条件的测试; 6.如果你有什么疑问,或者我们提供的材料有问题,欢迎联系我们: bwiunbuaa@https://www.360docs.net/doc/f24175527.html,提供北航计算机报考和选导师指导,或者 到https://www.360docs.net/doc/f24175527.html, 给我们留言。

14年上机题 第一题,阶乘数。输入一个正整数,输出时,先输出这个数本身,跟着一个逗号,再输出这个数的各位数字的阶乘和,等号,阶乘和的计算结果,并判断阶乘和是否等于原数,如果相等输出Yes,否则输出No。题目说明输入的正整数以及其各位阶乘和都不会超 出int型的表示范围。 输入样例1: 145 输出样例1: 145,1!+4!+5!=145 Yes 输入样例2: 1400 输出样例2: 1400,1!+4!+0!+0!=27

No 第二题,五子棋。输入一个19*19的矩阵,只包含数字0、1、2,表示两人下五子棋的棋牌状态,1、2分别表示两人的棋子,0表示空格。要求判断当前状态下是否有人获胜(横向、竖向或者斜线方向连成5个同色棋子)。题目说明输入样例保证每条线上至多只有连续5个同色棋子,并且保证至多只有1人获胜。如果有人获胜,输出获胜者(1或2)加一个冒号,接着输出获胜的五连珠的第一个棋子的坐标,从上到下从左到右序号最小的为第一个,序号从1开始编号。如果无人获胜,输出no。 样例略。 第三题,排版题。输入若干行字符,表示某电影的演职员表,每行只有一个冒号,冒号前面是职位,冒号后面是姓名,要求把各行

最优化方法大作业

发动机空燃比控制器 引言:我主要从事自动化相关研究。这里介绍我曾经接触过的发动机空燃比控制器设计中的优化问题。 发动机空燃比控制器设计中的最优化问题 AFR =a f m m && (1) 空燃比由方程(1)定义,在发动机运行过程中如果控制AFR 稳定在14.7可以获 得最好的动力性能和排放性能。如果假设进入气缸的空气流量a m &可以由相关单元检测得到,则可以通过控制进入气缸的燃油流量f m &来实现空燃比的精确控制。由于实际发动机的燃油喷嘴并不是直接对气缸喷燃油,而是通过进气歧管喷燃油,这么做会在进 气歧管壁上液化形成油膜,因此不仅是喷嘴喷出的未液化部分燃油会进入气缸,油膜 蒸发部分燃油也会进入气缸,如方程(2)。这样如何更好的喷射燃油成为了一个问题。 1110101122211ττττ?? ?? -?? ??????????=+????????-????????????-???? ? ??? ?? ????????? ?f f f v X x x u x x X x y =x && (2) 其中12、,==ff fv x m x m &&=f y m &,=fi u m &这里面,表示油膜蒸发量ff m &、fv m &表示为液化部分燃油、fi m &表示喷嘴喷射的燃油,在τf 、τv 、X 都已知的情况下,由现代控制理论知识,根据系统的增广状态空间模型方程(3) 0000001 1 011011114.70ττττ????-?? ??????????=-+-??????????????? ??????????????? ?? ??=?????? f f v v a X X u +q q m y q x x x &&& (3) 其中()0 14.7?t a q = y -m &。由极点配置方法,只要设计控制器方程(4),就可以 使得y 无差的跟踪阶跃输入,那么y 也能较好的跟踪AFR *a m /&。 12-- u =K q K x (4) 这里面的12、K K 确定,可由主导极点概念降维成两个参数12C ,C ,虽然都是最终稳态无差,但是目标是使得瞬态过程中y 和阶跃输入y r 的差异尽可能的小。所以原问

北航惯性导航大作业

惯性导航基础课程大作业报告(一)光纤陀螺误差建模与分析 班级:111514 姓名: 学号 2014年5月26日

一.系统误差原理图 二.系统误差的分析 (一)漂移引起的系统误差 1. εx ,εy ,εz 对东向速度误差δVx 的影响 clc;clear all; t=1:0.01:25; g=9.8; L=pi/180*39; Ws=2*pi/84.4*60; Wie=2*pi/24; R=g/(Ws)^2; e=0.1*180/pi; mcVx1=e*g*sin(L)/(Ws^2-Wie^2)*(sin(Wie*t)-Wie*sin(Ws*t)/Ws); mcVx2=e*((Ws^2-(Wie^2)*((cos(L))^2))/(Ws^2-Wie^2)*cos(Ws*t)-(Ws^2)*((sin(L))^2)*cos(Wi e*t)/(Ws^2-Wie^2)-(cos(L))^2); mcVx3=(sin(L))*(cos(L))*R*e*((Ws^2)*cos(Wie*t)/(Ws^2-Wie^2)-(Wie^2)*cos(Ws*t)/(Ws^2-Wi e^2)-1); plot(t,[mcVx1',mcVx2',mcVx3']); title('Ex,Ey,Ez 对Vx 的影响'); xlabel('时间t'); ylabel('Vx(t)'); 0,δλδL ,v v δδ

legend('Ex-mcVx1','Ey-mcVx2','Ez-mcVx3'); grid; axis square; 分析:εx,εy,εz对东向速度误差δVx均有地球自转周期的影响,εx,εy还会有舒勒周期分量的影响,其中,εy对δVx的影响较大。 2.εx,εy,εz对东向速度误差δVy的影响 clc;clear all; t=1:0.01:25; g=9.8; L=pi/180*39; Ws=2*pi/84.4*60; Wie=2*pi/24; R=g/(Ws)^2; e=0.1*180/pi; mcVy1=e*g*(cos(Wie*t)-cos(Ws*t))/(Ws^2-Wie^2); mcVy2=g*sin(L)*e/(Ws^2-Wie^2)*(sin(Wie*t)-Wie/Ws*sin(Ws*t)); mcVy3=g*cos(L)*e/(Ws^2-Wie^2)*(sin(Wie*t)-Wie/Ws*sin(Ws*t)); plot(t,[mcVy1',mcVy2',mcVy3']); title('Ex,Ey,Ez对Vy的影响'); xlabel('时间t'); ylabel('Vy(t)'); legend('Ex-mcVy1','Ey-mcVy2','Ez-mcVy3'); grid; axis square;

计算方法试题库讲解

计算方法 一、填空题 1.假定x ≤1,用泰勒多项式?+??+++=! !212n x x x e n x ,计算e x 的值,若要求截断误差不超过0.005,则n=_5___ 2. 解 方 程 03432 3=-+x -  x x 的牛顿迭代公式 )463/()343(121121311+--+--=------k k k k k k k x x x x x x x 3.一阶常微分方程初值问题 ?????= ='y x y y x f y 0 0)() ,(,其改进的欧拉方法格式为)],(),([21 1 1 y x y x y y i i i i i i f f h +++++= 4.解三对角线方程组的计算方法称为追赶法或回代法 5. 数值求解初值问题的四阶龙格——库塔公式的局部截断误差为o(h 5 ) 6.在ALGOL 中,简单算术表达式y x 3 + 的写法为x+y ↑3 7.循环语句分为离散型循环,步长型循环,当型循环. 8.函数)(x f 在[a,b]上的一次(线性)插值函数= )(x l )()(b f a b a x a f b a b x --+-- 9.在实际进行插值时插值时,将插值范围分为若干段,然后在每个分段上使用低阶插值————如线性插值和抛物插值,这就是所谓分段插值法 10、数值计算中,误差主要来源于模型误差、观测误差、截断误差和舍入误差。 11、电子计算机的结构大体上可分为输入设备 、 存储器、运算器、控制器、 输出设备 五个主要部分。 12、算式2 cos sin 2x x x +在ALGOL 中写为))2cos()(sin(2↑+↑x x x 。 13、ALGOL 算法语言的基本符号分为 字母 、 数字 、 逻辑值、 定义符四大

北航上机题

11年上机题 1. 【问题描述】 孪生数定义:如果 A 的约数(因数,包含1,但不包含A本身)之和等于 B ,B 的约数(因数)之和等于 A , A 和 B 称为孪生数(A和B不相等)。试找出正整数 M 和 N 之间的孪生数。 【输入形式】 从控制台输入两个正整数M和N(1<=M #include int sum(int x) { int i=1,sum=0; while(i

北航考研通信类综合921的一些经验之谈

转眼离考试结束已经一个多月了,感觉时间真快。。。。。在这里,说一些自己考试的经验吧,虽然还不知道自己考试的结果怎么样,但是希望我的经验呢能给后来的学弟学妹们提供一些帮助。 921通信类综合包含三门专业课:模电,信号与系统以及电磁场。其中模电占得分最多是60分,信号和电磁场都是45分,难度最大、最难得分的当然是模电,在我们学校,大家都叫它魔鬼,当初我们专业挂了四分之一的人!足以见其变态程度,幸好北航出的模电题一般都不会特别的难,但是你想不失分那是不可能的。 北航921专业课的考试大纲已经说了这几门课所使用的教材: 模电:1.张凤言编著,电子电路基础(第二版),高等教育出版社; 2.模拟集成电路的分析与设计,P.R.Gray等著,张晓林等译,高等教育出版社,2005年6月; 3. 童诗白主编,模拟电子技术基础(第四版),高等教育出版社 其中张凤言老师的那本是北航本校的教材,外面基本没的卖,我辗转终于买到一本,但是里面的内容实在是太多太繁杂,非一般人能接受的,特别是在考研时间如此紧迫的情况下,如果能弄到一本的话,看看其中波特图的章节就行了,其他的部分看童诗白老师的那本书完全就能应对考试。在这里,我要说一下自己复习时的一些心得吧。因为波特图是每年的必考题,但是童诗白老师那本书讲的跟张凤言老师讲的是完全不一样的,所以大家最好能看一下张凤言老师的那本书的那个章节,把那个章节的习题做了,考试题有可能就是在里面。另外,我复习的时候在图书馆借了一本模电的辅导书,我觉得非常好,现在忘了叫什么名字了,等我去图书馆查了再告诉大家,那本书感觉跟北航的要求很相近,其中波特图、反馈电路、放大电路的讲解都非常的好。 信号与系统:1. 郑君里,应启珩,杨为理,《信号与系统》,高等教育出版社,2000年5第二版。 2. 郑君里,应启珩,杨为理,《信号与系统》,高等教育出版社,第一版。 3.A.V. Oppenheim等著,刘树棠译,《信号与系统》第二版,西安交通大学出版社 信号与系统应该说是三门专业课中最简单的一门,也是最好拿分的一门,复习的到位的话,45分全拿到手都很正常。信号与系统考试题一般是三道大题,信号系统这么多内容,三道大题根本就考不了多少东西,通过我做往年的真题和自己考试的经验来看,最重要的还是那几个变换,傅里叶变换,拉普拉斯变换,Z变换,时域的,频域的,离散域的都要弄明白,而且要灵活运用,我的建议就是看好郑君里老师的两本书,那两本书写的实在是太经典了,大部分时间你要用来看教材,少部分时间看一些信号系统的考研辅导书,多见一些题型,也要练一些题来培养一下题感。 电磁场:1. 苏东林等,《电磁场与电磁波》,高等教育出版社(2008) 2. 苏东林等,《电磁场理论学习指导书》,电子工业出版社(2005.09)电磁场从2011年开始有了变化,教材之前还有一本徐永斌老师出的一本《工程电磁场基础》,以前是说这两本书都可以,从去年开始改了。徐永斌老师的书和苏东林老师的书我都买了,99%的内容是一样的,所以说这两本书都可以。其实我之前也是听别人的经验说是电磁场很简单,是最好复习的,但是复习的时候却发现是最难得,我足足看了一个月!!!现在想起来当时实在是太傻了,其实大家基本都没怎么学过电磁场,想在短时间内弄懂基本是不可能的,而且北航考的也很简单,总是一些老题型,但是我并不建议大家把《电磁场理论学习指导书》这本书来回翻几遍就不管了,因为每年出题的老师会不一样,说不定哪个老师心血来潮给你出点新题型,到时候就傻眼了,所以说课本还是要看的,但是要有选择的看,根据考纲上的

计算方法复习题

软工13计算方法复习题 1、对下面的计算式做适当的等价变换,以避免两个相近的数相减时的精度损失。 (1))ln()1ln(x x -+,其中x 较大 (2)x x -+12,其中x 较大 2 2 2、已知函数方程0)ln(3)(=--=x x x f 有一正根,请完成以下几方面的工作: (1)分析并选定一个含有这一正根的区间[a 0 , b 0],以便于用二分法求解; (2)验证在[a 0 , b 0]上用二分法求根的可行性,并计算逐步缩小的区间[a 1 , b 1] 和[a 2 , b 2]; (3)若考虑用简单迭代法求此根,试构造一个在[a 0 , b 0]上能保证收敛的迭代式)(1k k x x ?=+。 解: (1)把方程的根看成y=3-x 和y=ln(x)的交点,经分析可取含根区间[1.0 , 3.0] (2)经验算可得f(1.0)*f(3.0)<0,另f ’(x)在[1.0 , 3.0]上不变号,f(x)单调,二分法可行 (3)迭代式)ln(31k k x x -=+从迭代收敛定理两方面作完整讨论,知迭代式能保证收敛 3、用Doolittle 分解法求解线性方程组????? ?????=?????????????????????564221231112321x x x (要求写明求解过程)。 解:(1)先对系数矩阵A 作LU 分解得A=LU=?? ?? ????????????????5/32/32/511 215/32/112/11 (2)由L Y=B 解出Y=(4,4,3/5)T ,由UX=Y 解出X=(1,1,1)T 4、关于某函数y =f (x ),已知如下表所示的一批数据 (1)由上表中的数据构建差商表,并求出各阶差商; (2)分别用二点、三点牛顿插值法计算f (0.75)的近似值; (3)若用bx ae y =来拟合这一批数据,试求出系数a 和b (提示:两边取自然对数得ln y =ln a +bx , 令u =ln y ,问题转化为求拟合直线u =ln a +bx ); (4)分别用复化梯形积分和复化辛普森积分计算 ? 20 )(dx x f 的近似值。 (3)令i i y u ln =,计算 ∑i u =5,i i u x ∑=7.5,∑i x =5,∑2 i x =7.5,解下面方程组:

北航基础物理实验考试试题及答案

2009级基础物理实验期末试题 一、单项选择题(每题3分,共30分) 1、不确定度在可修正的系统误差修正以后,将余下的全部误差按产生原因及计算方法不同分为两类,其中 B 属于A类分量。 A、由测量仪器产生的的误差分析 B、同一条件下的多次测量值按统计方法计算的误差分量 C、由环境产生的误差分析 D、由测量条件产生的误差分量 2、下列说法中 C 是正确的。 A、在给定的实验条件下,系统误差和随机误差可以相互转化 B、当测量条件改变后,系统误差的大小和符号不随之变化 C、随机误差可以通过多次重复测量发现 D、一组测量数据中,出现异常的值即为粗大误差 5、已知(),下列公式中 B 是正确的。A、 B、

C、 D、 7、用千分尺(精度0、01mm)测某金属片厚度d的结果为 i 1 2 3 4 5 6 7 1.516 1.519 1.514 1.522 1.523 1.513 1.517 则测量结果应表述为d D_Dd_______ A、(1.518D_Dd__________????___________ C、(1.518D_Dd__________ (1.518_____ 8.tg45°1′有 B 位有效数字 A、6 B、5 C、4 D、3 9、对y=a+bx的线性函数,利用图解法求b时,正确的求解方法是 C 。

A、b=tg B、b=(、为任选两个测点的坐标值之差) C、b=(、为在所作直线上任选两个分得较远的点的坐标值之差) D、b=(x、y为所作直线上任选一点的坐标) 10、用量程为500mV的5级电压表测电压,下列测量记录中哪个是正确的? D A、250.43mV B、250.4mV C、250mV D、0.25V 二、填空题(每题3分,共15分) 11、已被确切掌握了其大小和符号的系统误差成为可定系统误差。 12、已知某地的重力加速度值为9.794,甲、乙、丙三人测量的结果分别为:9.795?^,9.811?^,9.791?^,试比较他们测量的精密度、正确度和准确度。甲测量的精密度低,正确度高;乙测量的正确度最低;丙测量的准确度最高。 13、如图所示,游标卡尺的读数为10.830 (cm),该游标的仪

北航数值分析大作业第二题精解

目标:使用带双步位移的QR 分解法求矩阵10*10[]ij A a =的全部特征值,并对其中的每一个实特征值求相应的特征向量。已知:sin(0.50.2)() 1.5cos( 1.2)(){i j i j ij i j i j a +≠+== (i,j=1,2, (10) 算法: 以上是程序运作的逻辑,其中具体的函数的算法,大部分都是数值分析课本上的逻辑,在这里特别写出矩阵A 的实特征值对应的一个特征向量的求法: ()[]()() []()[]()111111I 00000 i n n n B A I gause i n Q A I u Bu u λλ-?-?-=-?-?? ?-=????→=??????→= ?? ? 选主元的消元 检查知无重特征值 由于=0i A I λ- ,因此在经过选主元的高斯消元以后,i A I λ- 即B 的最后一行必然为零,左上方变 为n-1阶单位矩阵[]()()11I n n -?-,右上方变为n-1阶向量[]()11n Q ?-,然后令n u 1=-,则 ()1,2,,1j j u Q j n ==???-。

这样即求出所有A所有实特征值对应的一个特征向量。 #include #include #include #define N 10 #define E 1.0e-12 #define MAX 10000 //以下是符号函数 double sgn(double a) { double z; if(a>E) z=1; else z=-1; return z; } //以下是矩阵的拟三角分解 void nishangsanjiaodiv(double A[N][N]) { int i,j,k; int m=0; double d,c,h,t; double u[N],p[N],q[N],w[N]; for(i=0;i

北航考研保研机考题

2015. 机试两道题矩阵+字符串(60+40),后来我在论坛中看到往年机试也是这样的形式,连题型都相同。 1.矩阵 输入 开始数字和矩阵大小如1 3 输出 1 2 5 4 3 6 9 8 7 2.字符串替换,这是个比较常见的题了 将原始字符串中所有应替换字符串替换为目标字符串 2014. 第一题,阶乘数。 输入一个正整数,输出时,先输出这个数本身,跟着一个逗号,再输出这个数的各位数字的阶乘和,等号, 阶乘和的计算结果,并判断阶乘和是否等于原数,如果相等输出Yes,否则输出N o。题目说明输入的正整数 以及其各位阶乘和都不会超出int型的表示范围。 输入样例1: 145 输出样例1: 145,1!+4!+5!=145

Yes 输入样例2: 1400 输出样例2: 1400,1!+4!+0!+0!=27 No 第二题,五子棋。 输入一个19*19的矩阵,只包含数字0、1、2,表示两人下五子棋的棋牌状态,1、2分别表示两人的棋子,0表示空格。 要求判断当前状态下是否有人获胜(横向、竖向或者斜线方向连成5个同色棋子)。题目说明输入样例保证每条线上至多 只有连续5个同色棋子,并且保证至多只有1人获胜。如果有人获胜,输出获胜者(1或2)加一个冒号,接着输出获胜的 五连珠的第一个棋子的坐标,从上到下从左到右序号最小的为第一个,序号从1开始编号。如果无人获胜,输出no。 2011.

2013. 1. 给定两个元素个数不超过20的整数数组a和b,要求将a和b合并成一个新数组。合并规则:如果一个元素在两个数组中同时出现,则需在合并后的数组中去掉该元素;对于只在一个数组中重复出现的元素,合并后只保留一个。合并后按照从小到大的顺序将新数组输出(测试数据保证不会出现合并后无数据的情况)。

ANSYS上机指南-北航 2017考试答案

有限元分析软件ANSYS12.0 上机指南 2015下

目录 Project1 潜水艇的热力学分析 (01) Project2 薄板的平面应力问题分析 (02) Project3 坝体的平面应变问题分析 (08) Project4 热障涂层降温过程应力场分析 (10) Project5 钢梁的瞬态动力学分析 (13) Project6 热电制冷分析 (17) Project7 简单直流致动器电磁分析 (20)

Project 1 潜水艇的热力学分析 计算分析模型如图所示, 习题文件名: Thermal。 某一潜水艇可以简化为一圆筒,它由三层组成,最外面一层为不锈钢,中间为玻纤隔热层,最里面为铝层,筒内为空气,筒外为海水,求内外壁面温度及温度分布。 几何参数:筒外径30 feet 总壁厚 2 inch 不锈钢层壁厚0.75 inch 玻纤层壁厚 1 inch 铝层壁厚0.25 inch 筒长200 feet 导热系数不锈钢8.27 BTU/hr.ft.o F 玻纤0.028 BTU/hr.ft.o F 铝117.4 BTU/hr.ft.o F 边界条件空气温度70 o F 海水温度44.5 o F 空气对流系数 2.5 BTU/hr.ft2.o F 海水对流系数80 BTU/hr.ft2.o F 沿垂直于圆筒轴线作横截面,得到一圆环,取其中1度 进行分析,如图示。 1.Utility Menu>File>change jobename, 输入Steady1; 2.Utility Menu>File>change title,输入Steady-state thermal analysis of submarine; 3.Main Menu: Preprocessor>Material Props>Material Library>Select Units,选择BFT; 4.Main Menu: Preprocessor>Element Type>Add/Edit/Delete,选择Thermal Mass-Solid-Plane55; 5.Main Menu: Preprocessor>Material Prop>Material Models>Mat Mod Num 1-Thermal- Conductivity -Isotropic,材料编号1,在KXX框中输入8.27,选择OK;Material-New Model-2-OK,同上,Therm-Cond-Iso-KXX框中输入0.028,选择OK;同上新建材料3,KXX值设定为117.4; 6.Main Menu: Preprocessor>-Modeling->Create>-Areas-Circle>By Dimensions ,在RAD1中输入15,在RAD2中输入15-(.75/12),在THERA1中输入-0.5,在THERA2中输入0.5,选择APPL Y,在RAD1中输入15-(.75/12),在RAD2中输入15-(1.75/12),选择APPL Y,在RAD1中输入15-(1.75/12),在RAD2中输入15-2/12,选择OK; 7.Main Menu: Preprocessor>-Modeling->Operate>-Booleane->Glue>Area,选择PICK ALL; 8.Main Menu: Preprocessor>-Meshing-Size Contrls>-Lines-Picked Lines,选择不锈钢层短边,在NDIV框中输入4,选择APPL Y,选择玻璃纤维层的短边,在NDIV框中输入5,选择APPL Y,选择铝层的短边,在NDIV框中输入2,选择APPL Y,选择四个长边,在NDIV中输入16; 9.Main Menu: Preprocessor>-Attributes-Define>Picked Area,选择不锈钢层,在MAT框中输入1,选择APPL Y,选择玻璃纤维层,在MA T框中输入2,选择APPL Y,选择铝层,在MA T框中输入3,选择OK; 10.Main Menu: Preprocessor>-Meshing-Mesh>-Areas-Mapped>3 or 4 sided,选择PICK ALL; 11.Main Menu: Solution>-Loads-Apply>-Thermal-Convection>On lines,选择不锈钢外壁,在V ALI框中输入80,在V AL2I框中输入44.5,选择APPL Y,选择铝层内壁,在VALI框中输入2.5,在V AL2I框中输入70,选择OK; 12.Main Menu: Solution>-Solve-Current LS; 13.Main Menu: General Postproc>Plot Results>-Contour Plot-Nodal Solu,选择Temperature。

计算方法练习题与答案

练习题与答案练习题一 练习题二 练习题三 练习题四 练习题五 练习题六 练习题七 练习题八 练习题答案 练习题一 一、是非题 1.*x=–作为x的近似值一定具有6位有效数字,且其误差限 4 10 2 1 - ? 。 () 2.对两个不同数的近似数,误差越小,有效数位越多。 ( ) 3.一个近似数的有效数位愈多,其相对误差限愈小。 ( ) 4.用 2 1 2 x - 近似表示cos x产生舍入误差。 ( )

和作为π的近似值有效数字位数相同。 ( ) 二、填空题 1.为了使计算 ()()23 34912111y x x x =+ -+ ---的乘除法次数尽量少,应将该表 达式改写为 ; 2.* x =–是x 舍入得到的近似值,它有 位有效数字,误差限 为 ,相对误差限为 ; 3.误差的来源是 ; 4.截断误差为 ; 5.设计算法应遵循的原则 是 。 三、选择题 1.* x =–作为x 的近似值,它的有效数字位数为( ) 。 (A) 7; (B) 3; (C) 不能确定 (D) 5. 2.舍入误差是( )产生的误差。 (A) 只取有限位数 (B) 模型准确值与用数值方法求得的准确值 (C) 观察与测量 (D) 数学模型准确值与实际值 3.用 1+x 近似表示e x 所产生的误差是( )误差。 (A). 模型 (B). 观测 (C). 截断 (D). 舍入 4.用s *=21 g t 2表示自由落体运动距离与时间的关系式 (g 为重力加速度),s t 是 在时间t 内的实际距离,则s t s *是( )误差。 (A). 舍入 (B). 观测 (C). 模型 (D). 截断 5.作为2的近似值,有( )位有效数字。 (A) 3; (B) 4; (C) 5; (D) 6。

2016年北航机试习题及代码

北航2016上机真题逆序数 题目描述 给定一个数n,将这个数的各位顺序颠倒,称为逆序数m。 例如1234的逆序数是4321。 输入 输入一个数n(0 int main() { intn,m; while(scanf("%d",&n)!=EOF) { m=0; int stack[20]; int top=-1; int temp = n; while(temp!=0) { stack[++top]=temp%10; temp=temp/10;

} int j; for(j=0; j<=top; j++) { m=m*10+stack[j]; } if(m>n||m==n) { if(m%n==0) { printf("%d*%d=%d\n",n,(m/n),m); } else { printf("%d ",n); for(int k=0; k<=top; k++) { printf("%d",stack[k]); } printf("\n"); } } else { printf("%d ",n); for(int l=0; l<=top; l++) { printf("%d",stack[l]); } printf("\n"); } } return 0; } 字符串的解析 题目描述 给一个c语言的enum定义语句,输出enum中规定的各项值。输入

相关文档
最新文档