程序设计大赛试题
程序设计大赛试题及答案
![程序设计大赛试题及答案](https://img.taocdn.com/s3/m/49743456b14e852459fb572d.png)
试题1、数学黑洞(程序文件名maths.c/maths.cpp)【问题描述】任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。
对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。
【输入】一行,一个4位正整数n(1000< n<9999)【输出】掉进黑洞的步数输入1234输出32、进制转换(程序文件名conver.c/conver.cpp)【问题描述】任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。
【输入】一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。
【输出】转换后的数【输入输出样例】输入255 8输出3773、分数线划定(程序文件名score.c/score.cpp)【问题描述】公务员选拔工作正在 A 市如火如荼的进行。
为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。
面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。
现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。
【输入】第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。
输入数据保证m*150%向下取整后小于等于n。
第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。
数据保证选手的报名号各不相同。
山东科技大学第二届ACM程序设计大赛试题
![山东科技大学第二届ACM程序设计大赛试题](https://img.taocdn.com/s3/m/1d4d48bf69dc5022aaea00c3.png)
山东科技大学第二届ACM程序设计大赛试题册试题共14页,题目共计12道山东科技大学第二届ACM 程序设计大赛试题册Problem A 简单计算Description给出n 个十进制的数,找出这n 个数的二进制表示中1的个数最少的数。
Input输入的第一行为一个正整数T (1≤T ≤20),代表测试数据组数。
对于每组测试数据,输入的第一行为一个正整数n (1≤n ≤10000),第二行为n个正整数A 1、A 2、…、A n (1≤A i ≤109),每个数之间以空格分隔。
Output每组数据输出一行,先输出数据组数,再输出二进制中含1最少的数,如果存在多个数符合条件,输出最小的那个。
具体输出格式见样例输出。
Sample Input Sample Output山东科技大学第二届ACM 程序设计大赛试题册Problem B 关键字搜索Description我们的新网站具有了全新的搜索功能,使用了2个通配符“*”和“?”,其中“*”表示0或者多个小写字母,“?”代表1个字母。
当我们输入一个关键字的时候,我们在不确定的地方就使用通配符。
我们在数据库里面有多条记录,每条记录都是由小写字母组成,现在给出一个关键字,你能告诉我数据库里面有多少条与关键字相匹配的记录吗?例如: 如果关键字是j*y*m*y?,那么jiyanmoyu ,jyanmoyu ,jymyu 都是相匹配的记录。
Input第一行输入一个T (T ≤20),表示有T 组测试数据。
对于每组测试数据,第一行是输入的关键字,接下是数据库里面的所有记录的条数n ,1≤n ≤10000,每条记录的长度不超过50个小写字母。
Output对于每组测试数据,输出与关键字相匹配的总记录条数,占一行。
Sample Input Sample Output山东科技大学第二届ACM 程序设计大赛试题册Problem C 正方形Description在二维坐标轴内给出四个点,这四个点能否构成一个正方形。
大学程序设计大赛试题答案
![大学程序设计大赛试题答案](https://img.taocdn.com/s3/m/87fc13993086bceb19e8b8f67c1cfad6195fe9d8.png)
大学程序设计大赛试题答案一、选择题1. 在C++中,下列哪个关键字用于定义常量?A. staticB. volatileC. constD. mutable答案:C2. 以下关于Python中的列表(list)说法正确的是:A. 列表是不可变的序列类型。
B. 列表不支持添加元素。
C. 列表可以包含不同类型的元素。
D. 列表的元素不能被删除。
答案:C3. 在Java中,关于异常处理的描述,以下哪项是正确的?A. try块中必须跟catch块。
B. catch块可以捕获所有类型的异常。
C. finally块可以用于执行清理操作,无论是否发生异常都会执行。
D. throw关键字用于声明一个可能抛出的异常类型。
答案:C4. 以下关于数据库事务的描述,哪项是错误的?A. 事务具有原子性。
B. 事务具有一致性。
C. 事务具有隔离性。
D. 事务不具备持久性。
答案:D5. 在HTML5中,用于创建交互式内容的标签是:A. <canvas>B. <svg>C. <iframe>D. <audio>答案:A二、填空题1. 在JavaScript中,可以使用________函数来获取字符串的长度。
答案:length2. 在Python中,使用________关键字可以遍历字典中的所有键。
答案:keys()3. SQL语句中,用于删除表中所有记录但保留表结构的命令是________。
答案:TRUNCATE TABLE4. 在C语言中,使用________关键字可以定义一个指针变量。
答案:*(星号)5. 正则表达式中,\d表示匹配一个________字符。
答案:数字三、编程题1. 题目描述:编写一个程序,输入一个整数n,输出n的阶乘。
C++代码示例:```cpp#include <iostream>using namespace std;int factorial(int n) {if (n <= 1) {return 1;} else {return n * factorial(n - 1);}}int main() {int n;cin >> n;cout << factorial(n) << endl;return 0;}```2. 题目描述:编写一个Python程序,实现一个简单的计算器,支持加、减、乘、除功能。
C语言程序设计大赛题目和答案
![C语言程序设计大赛题目和答案](https://img.taocdn.com/s3/m/a5f52e6b657d27284b73f242336c1eb91a373390.png)
C语言程序设计大赛题目和答案在这篇文章中,我们将介绍一些C语言程序设计大赛的题目和对应的答案。
希望通过这些题目和答案的展示,能够对大家在C语言程序设计方面的知识有所帮助。
题目一:计算圆的周长和面积编写一个C程序,计算给定半径的圆的周长和面积,并输出结果。
```c#include <stdio.h>int main() {double radius, perimeter, area;printf("请输入圆的半径:");scanf("%lf", &radius);perimeter = 2 * 3.14159 * radius;area = 3.14159 * radius * radius;printf("圆的周长为:%.2lf\n", perimeter);printf("圆的面积为:%.2lf\n", area);return 0;}```题目二:查找数组中的最大值编写一个C程序,从给定的整型数组中查找并输出最大的元素。
```c#include <stdio.h>#define MAX_SIZE 100int main() {int array[MAX_SIZE], size, i;int max;printf("请输入数组的大小:");scanf("%d", &size);printf("请输入数组的元素:");for(i = 0; i < size; i++) {scanf("%d", &array[i]);}max = array[0];for(i = 1; i < size; i++) {if(array[i] > max) {max = array[i];}printf("数组中的最大值为:%d\n", max);return 0;}```题目三:判断素数编写一个C程序,判断给定的整数是否为素数。
大学生程序设计竞赛试题(正式赛)
![大学生程序设计竞赛试题(正式赛)](https://img.taocdn.com/s3/m/d79ae0aa03d8ce2f006623be.png)
中原工学院第一届大学生程序设计竞赛正式比赛试题主办:中原工学院教务处学生处校团委计算机学院承办:中原工学院计算机学院地点:计算机学院实验中心406实验室时间:2010年4月11日【试题一】兔子【题目描述】兔子具有很强的繁殖能力。
一对成年兔子每个月可以繁殖一对小兔子,而一对小兔子经过m个月之后,就会长成一对成年兔子。
通过分析,我们可以看出:若m=2的时候,每个月兔子的对数构成了一个Fibonacci数列。
但是,若m<>2,这个问题看起来就不那么简单了。
你的任务是计算:假定初始只有一对兔子,那么,经过d个月之后,共有多少对兔子?可以假定,在此阶段没有任何兔子死亡。
【输入】输入包括多组测试数据。
每组测试数据的一行中包括2个整数m(1<=m<=10),d(1<=d<=30)。
当测试数据遇到一行中有两个0时,即m=d=0,测试数据结束。
【输出】针对每组测试数据,在每一行输出经过d个月后共有多少对兔子。
【输入样例】2 33 50 0【输出样例】59【试题二】网页浏览器【题目描述】Mozilla Firefox是一个自由的,开放源码的网页浏览器,适用于Windows, Linux 和MacOS X等平台。
Firefox火狐校园大使是Mozilla开源社区项目的一部分,针对在校的高年级本科生和研究生以及众多技术爱好者,在校园中推广开源项目和开放技术,让更多的开发人员受益于Mozilla的开放技术和免费资源。
你很荣幸得到了这样一个机会,为Firefox编写一个重要的导航模块。
正如上图所示,导航模块要接受用户的后退、前进、进入用户输入的网址以及清空浏览记录等操作。
【输入】为了简化问题,用户所有的操作都以字符的形式从标准输入读入。
每一行描述一个操作,各操作的格式和功能如下所示:操作功能back 如果当前页面不是第一个页面,则跳到到前一个页面,并输出这个页面的网址forward 如果当前页面不是最后一个页面,则跳到到后一个页面,并输出这个页面的网址url 网址跳转到用户输入的网址(网址不含空格)clear 清空浏览记录(当前页面除外)exit 退出浏览器浏览器启动时默认进入中原工学院的主页” ”【输出】对于每一个需要输出网址的操作,输出对应的网址。
【职业技能大赛计算机程序设计员赛项】理论试题及参考答案
![【职业技能大赛计算机程序设计员赛项】理论试题及参考答案](https://img.taocdn.com/s3/m/1775b0512cc58bd63186bdb4.png)
【职业技能大赛计算机程序设计员赛项】理论试卷注 意 事 项1、本试卷依据计算机程序设计员国家职业标准命制,考试时间:60分钟。
2、请在试卷标封处填写姓名、准考证号和所在单位的名称。
3、请仔细阅读答题要求,用碳素笔或钢笔在规定位置填写答案。
一、单项选择(第1题~第60题,每题1分,共60分。
)1.操作系统是对( )进行管理的软件。
A 、软件B 、硬件C 、计算机资源D 、应用程序 2.现代操作系统的两个基本特征是( )和资源共享。
A 、多道程序设计B 、实现分时与实时处理C 、程序的并发执行D 、中断处理3.计算机系统中用来连接CPU 、内存储器和I/O 接口的总线称为系统总线。
( )总线属于系统总线技术的一种。
A 、IEEE1394B 、PCIC 、RS-232D 、USB 4.下列不属于网络操作系统的是( )。
A 、Windows NTB 、DOSC 、LinuxD 、NetWare 5.下面哪一个是有效的IP 地址( )。
A 、202.280.130.45B 、192.202.130.45C 、280.192.33.45D 、130.192.290.45 6.在Word 中,如果要选择多处不连续的文本,可以( )。
A 、按住Shift 键不放,用鼠标分别选中欲选择的文本 B 、按住Alt 键不放,用鼠标分别选中欲选择的文本 C 、按住Ctrl 键不放,用鼠标分别选中欲选择的文本 D 、无法做到7.在Excel 工作表中,假定C3:C6区域内保存的数值依次为10、15、20、45,则函数=AVERAGE(C3:C6)的值为( )。
A 、22B 、22.5C 、45D 、90 8.在一棵具有n 个结点的完全二叉树中,分枝结点的最大编号为( )。
A 、((n+1)/2)上限取整B 、((n+1)/2)下限取整C 、(n/2)下限取整D 、((n-1)/2)上限取整 9.设某棵三叉树中有40个结点,则该三叉树的最小高度为( )。
第三届ACM程序设计大赛试题new
![第三届ACM程序设计大赛试题new](https://img.taocdn.com/s3/m/5ee7a901a6c30c2259019ef9.png)
计算机工程学院第三届ACM程序设计大赛试题Problem A BridgeDescriptionn people wish to cross a bridge at night. A group of at most two people may cross at any time, and each group must have a flashlight. Only one flashlight is available among the n people, so some sort of shuttle arrangement must be arranged in order to return the flashlight so that more people may cross.Each person has a different crossing speed; the speed of a group is determined by the speed of the slower member. Your job is to determine a strategy that gets all n people across the bridge in the minimum time.InputThe first line of input contains n, followed by n lines giving the crossing times for each of the people. There are not more than 1000 people and nobody takes more than 100 seconds to cross the bridge. OutputThe first line of output must contain the total number of seconds required for all n people to cross the bridge. The following lines give a strategy for achieving this time. Each line contains either one or two integers, indicating which person or people form the next group to cross. (Each person is indicated by the crossing time specified in the input. Although many people may have the same crossing time the ambiguity is of no consequence.) Note that the crossings alternate directions, as it is necessary to return the flashlight so that more may cross. If more than one strategy yields the minimal time, any one will do.Sample Input(Input file: pa.txt)412510Sample Output171 215 1021 2Problem B LottoDescriptionIn the German Lotto you have to select 6 numbers from the set {1,2,...,49}. A popular strategy to play Lotto - although it doesn't increase your chance of winning - is to select a subset S containing k (k > 6) of these 49 numbers, and then play several games with choosing numbers only from S. For example, for k=8 and S = {1,2,3,5,8,13,21,34} there are 28 possible games: [1,2,3,5,8,13], [1,2,3,5,8,21],[1,2,3,5,8,34], [1,2,3,5,13,21], ... [3,5,8,13,21,34].Your job is to write a program that reads in the number k and the set S and then prints all possible games choosing numbers only from S.InputThe input will contain one or more test cases. Each test case consists of one line containing several integers separated from each other by spaces. The first integer on the line will be the number k (6 < k < 13). Then k integers, specifying the set S, will follow in ascending order. Input will be terminated by a value of zero (0) for k.OutputFor each test case, print all possible games, each game on one line. The numbers of each game have to be sorted in ascending order and separated from each other by exactly one space. The games themselves have to be sorted lexicographically, that means sorted by the lowest number first, then by the second lowest and so on, as demonstrated in the sample output below. The test cases have to be separated from each other by exactly one blank line. Do not put a blank line after the last test case.Sample Input(Input file: pb.txt)7 1 2 3 4 5 6 78 1 2 3 5 8 13 21 34Sample Output1 2 3 4 5 61 2 3 4 5 71 2 3 4 6 71 2 3 5 6 71 2 4 5 6 71 3 4 5 6 72 3 4 5 6 71 2 3 5 8 131 2 3 5 8 211 2 3 5 8 341 2 3 8 13 211 2 3 8 13 341 2 3 8 21 341 2 3 13 21 341 2 5 8 13 211 2 5 8 13 341 2 5 8 21 341 2 5 13 21 341 2 8 13 21 341 3 5 8 13 211 3 5 8 13 341 3 5 8 21 341 3 5 13 21 341 3 8 13 21 341 5 8 13 21 342 3 5 8 13 212 3 5 8 13 342 3 5 8 21 342 3 5 13 21 342 3 8 13 21 342 5 8 13 21 343 5 8 13 21 34Problem C EncryptChip and Dale have devised an encryption method to hide their (written) text messages. They first agree secretly on two numbers that will be used as the number of rows (R) and columns (C) in a matrix. The sender encodes an intermediate format using the following rules:1. The text is formed with uppercase letters [A-Z] and <space>.2. Each text character will be represented by decimal values as follows:<space> = 0, A = 1, B = 2, C = 3, ..., Y = 25, Z = 26The sender enters the 5 digit binary representation of the characters' values in a spiral pattern along the matrix as shown below. The matrix is padded out with zeroes (0) to fill the matrix completely. For example, if the text to encode is: "ACM" and R=4 and C=4, the matrix would be filled in as follows:A = 00001, C = 00011, M = 01101 (one extra 0)The bits in the matrix are then concatenated together in row major order and sent to the receiver. The example above would be encoded as: 0000110100101100Inputspace, and a string of binary digits that represents the contents of the matrix (R * C binary digits). The binary digits are in row major order.OutputFor each dataset, you should generate one line of output with the following values: The dataset number as a decimal integer (start counting at one), a space, and the decoded text message. You should throw away any trailing spaces and/or partial characters found while decoding.Sample Input(Input file: pc.txt)24 4 ACM5 2 HISample Output1 00001101001011002 0110000010Problem D ConnectionThere are N cities in the country and M bidirectional roads between the cities. The government wants to build some new roads such that for any pair of cities there is at least one path between them. Now you have to find out the minimal amount of roads that have to build.InputThe input may contain multiple test cases.For each test case, the first line is two integers N (1<=N<=100) and M (1<=M<=N*N/2),indicating the number of cities and the number of roads. Then the next M lines each contain two integers x and y (0<=x,y<n), meaning that there is a road between cities x and cities y.N=M=0 indicates the end of input.OutputFor each test case, print the answer in a single li ne.Sample Input(Input file: pd.txt)5 20 12 3Sample Output2Problem E GridlandBackgroundFor years, computer scientists have been trying to find efficient solutions to different computing problems. For some of them efficient algorithms are already available, these are the "easy" problems like sorting, evaluating a polynomial or finding the shortest path in a graph. For the "hard" ones only exponential-time algorithms are known. The traveling-salesman problem belongs to this latter group. Given a set of N towns and roads between these towns, the problem is to compute the shortest path allowing a salesman to visit each of the towns once and only once and return to the starting point.ProblemThe president of Gridland has hired you to design a program that calculates the length of the shortest traveling-salesman tour for the towns in the country. In Gridland, there is one town at each of the points of a rectangular grid. Roads run from every town in the directions North, Northwest, West, Southwest, South, Southeast, East, and Northeast, provided that there is a neighbouring town in that direction. The distance between neighbouring towns in directions North�CSouth or East�CWest is 1 unit. The length of the roads is measured by the Euclidean distance. For example, Figure 7 shows 2 �� 3-Gridland, i.e., a rectangular grid of dimensions 2 by 3. In 2 �� 3-Gridland, the shortest tour has length 6.Figure 7: A traveling-salesman tour in 2 �� 3-Gridland.InputThe first line contains the number of scenarios.For each scenario, the grid dimensions m and n will be given as two integer numbers in a single line, separated by a single blank, satisfying 1 < m < 50 and 1 < n < 50.OutputThe output for each scenario begins with a line containing "Scenario #i:", where i is the number of the scenario starting at 1. In the next line, print the length of the shortest traveling-salesman tour rounded to two decimal digits. The output for every scenario ends with a blank line.Sample Input(Input file: pe.txt)2Sample OutputScenario #1:4.00Scenario #2:6.00Problem F Digital RootsBackgroundThe digital root of a positive integer is found by summing the digits of the integer. If the resulting value is a single digit then that digit is the digital root. If the resulting value contains two or more digits, those digits are summed and the process is repeated. This is continued as long as necessary to obtain a single digit.For example, consider the positive integer 24. Adding the 2 and the 4 yields a value of 6. Since 6 is a single digit, 6 is the digital root of 24. Now consider the positive integer 39. Adding the 3 and the 9 yields 12. Since 12 is not a single digit, the process must be repeated. Adding the 1 and the 2 yeilds 3, a single digit and also the digital root of 39.InputThe input file will contain a list of positive integers, one per line. The end of the input will be indicated by an integer value of zero.OutputFor each integer in the input, output its digital root on a separate line of the output.Sample input(Input file: pf.txt)2439Sample Output63Problem G Counting NumbersStarting from a positive integer n (1<=n<=2001).On the left of the integer n ,you can place another integer m to form a new integer mn , where m must be less then or equal to half of the integer n ,If there is an integer k less then or equal to half of m, you can place integer k on the left of mn ,to form a new integer kmn,…,and so on .For Examole ,you can place 12 on the left of 30 to Form an integer 1230,and you can place 6 to the left of 1230 to form an integer 61230,…,and so onFor example , start from n=8.you can place integer 1,2,3and 4 to the left of 8 to get the integers 18,28,38,48.For number 18,you can not form a new integer using the procedure described as above.For number28 and 38,you can form new integers 128 and 138.For number 48 ,you can place 1 and 2 on the left of 48 to get new integers 148 and 248.For number 248,you can place 1 on the left of it to get a new integer 1248.In total, you can have the following 10 integers(includeing the integer you start with)8182838481281381482481248Give an integer n ,find the number of integers you can get using the procedure described above.InputAn integer nOutputAn integer witch represents the number of integer you can get.Sample input: (Input file: pg.txt)8Sample Output:10Problem H Buy Low, Buy LowerThe advice to "buy low" is half the formula to success in the stock market. But to be considered a great investor you must also follow this problems' advice:"Buy low, buy lower"That is, each time you buy a stock, you must purchase more at a lower price than the previous time you bought it. The more times you buy at a lower price than before, the better! Your goal is to see how many times you can continue purchasing at ever lower prices.You will be given the daily selling prices of a stock over a period of time. You can choose to buy stock on any of the days. Each time you choose to buy, the price must be lower than the previous time you bought stock. Write a program which identifies which days you should buy stock in order to maximize the number of times you buy.By way of example, suppose on successive days stock is selling like this:Day 1 2 3 4 5 6 7 8 9 10 11 12Price 68 69 54 64 68 64 70 67 78 62 98 87In the example above, the best investor (by this problem, anyway) can buy at most four times if they purchase at a lower price each time. One four day sequence (there might be others) of acceptable buys is:Day 2 5 6 10Price 69 68 64 62PROGRAM NAME: buylowInputLine 1: N (1 <= N <= 5000), the number of days for which stock prices are available.Line 2..etc: A series of N positive space-separated integers (which may require more than one line of data) that tell the price for that day. The integers will fit into 32 bits quite nicely.Outputthe length of the longest sequence of decreasing pricesSample input: (Input file: ph.txt)1268 69 54 64 68 64 70 67 78 62 98 87Sample Output:4注意事项:1、数据从文件输入,标准输出,注意输入文件名题中已经给出。
全国青少年程序设计竞赛真题
![全国青少年程序设计竞赛真题](https://img.taocdn.com/s3/m/ba2c26903086bceb19e8b8f67c1cfad6185fe961.png)
全国青少年程序设计竞赛真题1. 设计一个程序,实现给定两个数的加减乘除运算。
程序需求:输入:两个浮点数 a 和 b;运算符 op(+、-、*、/)输出:根据运算符 op 进行相应的运算结果程序设计思路:首先,我们需要接收用户输入的两个浮点数 a 和 b,以及运算符 op。
然后,根据运算符进行相应的运算操作,并将结果输出。
程序设计:#include <stdio.h>int main(){float a, b;char op;printf("请输入第一个数:");scanf("%f", &a);printf("请输入第二个数:");scanf("%f", &b);printf("请输入运算符(+、-、*、/):");scanf(" %c", &op);switch(op){case '+':printf("两数相加的结果为: %.2f\n", a + b); break;case '-':printf("两数相减的结果为: %.2f\n", a - b); break;case '*':printf("两数相乘的结果为: %.2f\n", a * b); break;case '/':if(b != 0){printf("两数相除的结果为: %.2f\n", a / b); }else{printf("错误:除数不能为零!\n");}break;default:printf("错误:不支持的运算符!\n");break;}return 0;}2. 设计一个程序,找出一个整数数组中的最大值和最小值。
程序设计大赛试题及答案
![程序设计大赛试题及答案](https://img.taocdn.com/s3/m/0fe3827a7c1cfad6195fa792.png)
试题1、数学黑洞(程序文件名maths.c/maths.cpp)【问题描述】任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。
对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。
【输入】一行,一个4位正整数n(1000< n<9999)【输出】掉进黑洞的步数输入1234输出32、进制转换(程序文件名conver.c/conver.cpp)【问题描述】任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。
【输入】一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。
【输出】转换后的数【输入输出样例】输入255 8输出3773、分数线划定(程序文件名score.c/score.cpp)【问题描述】公务员选拔工作正在 A 市如火如荼的进行。
为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。
面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。
现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。
【输入】第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。
输入数据保证m*150%向下取整后小于等于n。
第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。
数据保证选手的报名号各不相同。
第六届程序设计比赛题目与答案
![第六届程序设计比赛题目与答案](https://img.taocdn.com/s3/m/c14aeebf900ef12d2af90242a8956bec0875a55b.png)
一、鸡兔同笼问题描绘一个笼子里面关了鸡和兔子〔鸡有2只脚,兔子有4只脚,没有例外〕。
已经知道了笼子里面脚的总数a,问笼子里面至少有多少只动物,至多有多少只动物输入数据第1行是测试数据的组数n,后面跟着n行输入。
每组测试数据占1行,包括一个正整数a (a < 32768)。
输出要求n行,每行输出对应一个输入。
输出是两个正整数,第一个是最少的动物数,第二个是最多的动物数,两个正整数用空格分开。
假如没有满足要求的情况出现,那么输出2个0。
输入样例2320输出样例0 05 10解题思路这个问题可以描绘成任给一个整数N,假如N是奇数,输出0 0,否那么假如N是4的倍数,输出N / 4 N / 2,假如N不是4的倍数,输出N/4+1 N/2。
这是一个一般的计算题,只要实现相应的判断和输出代码就可以了。
题目中说明了输入整数在一个比拟小的范围内,所以只需要考虑整数运算就可以了。
参考程序1.#include <stdio.h>2.void main( )3.{4.int nCases, i, nFeet; //nCases 表示输入测试数据的组数,nFeet表示输入的脚数。
5.scanf("%d", &nCases);6.for(i = 0; i < nCases; i++){7.scanf("%d", &nFeet);8.if(nFeet %2 != 0) // 假如有奇数只脚,那么输入不正确,9.// 因为不管2只还是4只,都是偶数10.printf("0 0\n");11.else if (nFeet%4 != 0) //假设要动物数目最少,使动物尽量有4只脚12.//假设要动物数目最多,使动物尽量有2只脚13.printf("%d %d\n", nFeet / 4 + 1, nFeet / 2);14.else printf("%d %d\n", nFeet / 4, nFeet / 2);15.}16.}二、判断闰年问题描绘判断某年是否是闰年。
宁波市第23届中小学生计算机程序设计竞赛初赛试题
![宁波市第23届中小学生计算机程序设计竞赛初赛试题](https://img.taocdn.com/s3/m/b580cdd6c1c708a1284a44e2.png)
宁波市第23届中小学生计算机程序设计竞赛初赛试题(高中组)学校姓名准考证号(说明:答案请写在答题卷上。
考试时间120分钟,满分120分)一、选择题(每小题1.5分,共30分)前10小题为单选题,每题有且仅有一个正确答案,后10小题为不定项选择题,只有全部选对才得分。
请将正确选项写在答题卷相应位置上,答在试卷上不得分。
1.某开发人员不顾企业有关保守商业秘密的要求,将其参与该企业开发设计的应用软件的核心程序设计技巧和算法通过论文向社会发表,那么该开发人员的行为。
A. 属于开发人员权利不涉及企业权利B. 侵犯了企业商业秘密权C. 违反了企业的规章制度但不侵权D. 未侵犯权利人软件著作权2.用可将摄影作品、绘画作品输入到计算机中,进而对这些图像信息进行加工处理。
A.扫描仪B.投影仪C. 彩色喷墨打印机D. 绘图仪3.“冲击波”病毒属于蠕虫类型的病毒,它利用 Windows 操作系统的漏洞进行快速传播。
A. CGI 脚本B. RPCC. DNSD. IMAP4.若内存按字节编址,用存储容量为32K× 8 比特的存储器芯片构成地址编号A0000H 至DFFFFH 的内存空间,则至少需要片。
A. 4B. 6C. 8D. 105.运算式(2008)10-(3723)8的结果是。
A.(-1715)10 B.(5)10 C.(-5)16 D.(111)26.以下文件扩展名中,不是视频文件格式。
A.MPEGB.AVIC.VOCD. RM7.利用逐点插入建立序列(50,72,43,,85,75,20,35,45,65,30)对应的二叉排序树以后,查找元素30要进行_________次元素间的比较。
A.4 B.5 C.6 D.78.算法策略与递归技术的联系最弱。
A. 动态规划B. 贪心C. 回溯D. 分治9.路由器收到一个数据包,其目标地址为 195.26.17.4,该地址属于子网。
A. 195.26.0.0/21B. 195.26.20.0/22C. 195.26.8.0/22D. 195.26.16.0/2010.MPC(MultimediaPC)与PC的主要区别是增加了__ _。
c语言程序设计比赛试题及答案
![c语言程序设计比赛试题及答案](https://img.taocdn.com/s3/m/b59e0a7c640e52ea551810a6f524ccbff021ca10.png)
c语言程序设计比赛试题及答案一、选择题(每题2分,共20分)1. 下列哪个选项是C语言中的合法整数常量?A. 0x1AB. 01AC. 0b1010D. 1.23答案:A2. C语言中,哪个关键字用于定义一个函数?A. structB. intC. voidD. return答案:B3. 下列哪个选项是C语言中正确的注释方式?A. // 这是注释B. /* 这是注释 */C. //* 这是注释D. /* 这是注释答案:B4. C语言中,哪个运算符用于求两个数的和?A. +B. -C. *D. /答案:A5. 在C语言中,哪个关键字用于定义一个结构体?A. structB. unionC. enumD. typedef答案:A6. C语言中,哪个关键字用于定义一个枚举类型?A. structB. unionC. enumD. typedef答案:C7. 下列哪个选项是C语言中合法的变量名?A. 2variableB. variable2C. _variableD. variable$2答案:B8. 在C语言中,哪个关键字用于定义一个指针?A. intB. floatC. charD. *答案:D9. C语言中,哪个函数用于将字符串复制到另一个字符串?A. strcpyB. strcatC. strcmpD. strlen答案:A10. 在C语言中,哪个函数用于计算字符串的长度?A. strcpyB. strcatC. strcmpD. strlen答案:D二、填空题(每题2分,共20分)1. C语言中,用于定义一个整型数组的关键字是________。
答案:int2. C语言中,用于定义一个字符型数组的关键字是________。
答案:char3. C语言中,用于定义一个浮点型数组的关键字是________。
答案:float4. C语言中,用于定义一个双精度浮点型数组的关键字是________。
答案:double5. C语言中,用于定义一个字符串的关键字是________。
程序设计比赛试题
![程序设计比赛试题](https://img.taocdn.com/s3/m/0d1b0f32360cba1aa911da57.png)
程序设计比赛试题最少钱币数:【问题描述】这是一个古老而又经典的问题。
用给定的几种钱币凑成某个钱数,一般而言有多种方式。
例如:给定了6种钱币面值为2、5、10、20、50、100,用来凑15元,可以用5个2元、1个5元,或者3个5元,或者1个5元、1个10元,等等。
显然,最少需要2个钱币才能凑成15元。
你的任务就是,给定若干个互不相同的钱币面值,编程计算,最少需要多少个钱币才能凑成某个给出的钱数。
【要求】【数据输入】输入可以有多个测试用例。
每个测试用例的第一行是待凑的钱数值M(1<=M<=2000,整数),接着的一行中,第一个整数K (1<=K<=10)表示币种个数,随后是K个互不相同的钱币面值Ki(1<=Ki<=1000)。
输入M=0时结束。
【数据输出】每个测试用例输出一行,即凑成钱数值M最少需要的钱币个数。
如果凑钱失败,输出“Impossible”。
你可以假设,每种待凑钱币的数量是无限多的。
【样例输入】156 2 5 10 20 50 10011 2【样例输出】2 ImpossibleFeli的生日礼物【问题描述】Felicia的生日是11月1日(和Kitty是同一天生的哦)。
于是Feli请来Kitty一起过生日。
Kitty带来了最新款的“Kitty猫”玩具准备送给Feli,不过她说,这份礼物可不是白送的。
Feli要帮她一个忙,才能够得到心仪已久的玩具。
Kitty说,“Kitty猫”玩具已经卖出了n!个,n<=10^100*_*,Kitty想知道确切的数字,而不是无聊的“一个数加个感叹号”。
Feli听了大吃一惊。
要知道,算出n!是一个无比艰巨的任务。
Feli告诉Kitty,就算Feli算出n!,Kitty也看不下去,因为当n=20时,计算机的长整型已经存不下了(Kitty只能接受1-9之间的数字)。
于是Kitty说,你只要告诉我n!最后一位非0的数就可以了。
C语言程序设计大赛题目和答案
![C语言程序设计大赛题目和答案](https://img.taocdn.com/s3/m/dbdaf7df7f1922791688e8cd.png)
C语言程序设计大赛题目和答案/*-------------------第一题某人到商店购物,身上有钱m元,商店里有商品n件,如果只能买1件或2件商品,且想一次性把钱花完,编程求是否可行?输入数据:第一行输入两个整数n和m(1≤n≤30000,1≤m≤10000),下面n行中每一行都是一个整数a,表示商店中商品的价格,1≤a≤10000。
输出数据:如果可以恰好用m元钱买到1件或者是2件东西,则第一行输出YES,随后的一行或两行输出所买商品的价格;否则输出NO。
输入样例:5 201371318输出样例:YES713-----------------------*/#include <stdio.h>#include <malloc.h>void main(){int m, n;int *a;int i,j;scanf("%d%d",&n,&m); //输入商品数及钱的多少a=(int*)malloc(n*sizeof(int));for(i=0;i<n;i++) scanf("%d",a+i); //输入每件商品的价格for(i=0;i<n;i++)if(a[i]==m) {printf("%s\n%d\n","YES",a[i]); break;}elsefor(j=i+1;j<n;j++)if(a[i]+a[j]==m){printf("%s\n%d\n%d\n","YES",a[i],a[j]); return;}if (i==n) printf("\nNO\n");}/*----------------------第二题写出一个程序,接受一个以N/D的形式输入的分数,其中N为分子,D为分母,输出它的小数形式。
大学生程序设计大赛试题
![大学生程序设计大赛试题](https://img.taocdn.com/s3/m/6890bd23482fb4daa58d4bcf.png)
试题 2 在二维字符阵列中寻找指定的字符串。 输入:前两行分别指示字符矩阵的宽 w 和高 h(1<=w<=80 且 1<=h<=80)。接下来的 h 行每行 w 个字
符便是字符矩阵的内容,再下面的 1 行为要寻找的字符串的数目 n(n<10),其后的 n 行便是要 寻找的字符串,每个字符串不会超过 20 个字符。 输出:n 行,每行保存 1 个字符串的位置。位置的格式形如(1,2)->(2,6),意为该字符串首字母在字符矩 阵中的位置是第 1 列 2 行,尾字母在字符矩阵中的位置是第 2 列 6 行。 备注:如果某个字符串在字符阵列中出现多次,则只记录任意一个出现位置即可。字符串出现的形式 可能是水平、竖直、向前、向后和斜向。输出的位置顺序应该与输入中的字符串出现顺序一致。 区分字符的大小写。
3
试题 4 在计算机辅助设计(CAD)中,有一个经典问题:消除隐藏线(被其它图形遮住的线段)。你需要 设计一个软件,帮助建筑师绘制城市的侧视轮廓图。为了方便处理,限定所有的建筑物都是矩形的, 而且全部建立在同一水平面上。每个建筑物用一个三元组表示(Li, Hi, Ri)其中 Li 和 Ri 分别是建 筑物 i 的左右边缘坐标,Hi 是建筑物 i 的高度。 下面左图中的建筑物分别用如下三元组表示: (1,11,5),(2,6,7),(3,13,9),(12,7,16),(14,3,25),(19,18,22),(23,13,29),(24,4,28) 下面右图中的城市侧视轮廓线用如下的序列表示: (1,11,3,13,9,0,12,7,16,3,19,18,22,3,23,13,29,0)
编写程序,读入一组-231 至 231-1 之间的数值,输出对应的外星球数值表示。
宁波市第25届中小学生程序设计竞赛初中组初赛试题和答案
![宁波市第25届中小学生程序设计竞赛初中组初赛试题和答案](https://img.taocdn.com/s3/m/ed01e62ce2bd960590c677ea.png)
初中组初赛试题一、选择题(每题1.5分,共30分。
每小题只有唯一一个答案)1、在宁波市中小学生程序设计比赛复赛(上机编程)时,以下不能使用的编程语言是:(A)Turbo Pascal (B)Free Pascal (C)C (D)C++ 2、在Free Pascal中按功能键F7或F4时,以下叙述正确的是:(A)F4逐条语句执行(包括子程序),F7运行至光标位置(B)F7逐条语句执行(包括子程序),F4运行至光标位置(C)F4逐条语句执行(不包括子程序),F7运行至光标位置(D)F7逐条语句执行(不包括子程序),F4运行至光标位置3、使用高级语言编写的程序称之为:(A)源程序(B)编辑程序(C)编译程序(D)链接程序4、如果自己的程序进入了死循环,应当按什么键终止?(A)Ctrl+C (B)Ctrl+D (C)Alt+C (D)Alt+D5、参加宁波市中小学生程序设计比赛复赛(上机编程)时,以下哪种行为是允许的?(A)访问互联网或局域网(B)使用U盘或光盘(C)使用自带的草稿纸(D)考试时发现机器有问题,举手示意监考人员处理6、参加宁波市中小学生程序设计比赛复赛(上机编程)时,你有一个程序被判0分。
你发现程序其实是正确的,但存在以下问题,提出申诉,以下哪个申诉会被接受?(A)源程序文件名和存放源程序的目录名错误(B)只是存放源程序的目录名错误,源程序文件名是正确的(C)存放源程序的目录名正确,源程序文件名是错误的(D)根据比赛规则,以上申斥都不会被接受7、在Free Pascal语言,以下关于各种数据类型占内存空间大小的描述错误的是:A每个integer型占2个字节 B每个longint型占4个字节C每个boolean型占2个字节D每个extended型占10个字节8、使用数组逐层保存完全二叉树结构,则以下叙述正确的是:(A)逻辑结构为完全二叉树,物理结构为数组(B)物理结构为完全二叉树,逻辑结构为数组(C)逻辑结构和物理结构均为完全二叉树(D)逻辑结构和物理结构均为数组9、关键码相同的二个元素,原来在排在前面的还能保证排在前面,这种排序算法我们称它是稳定的。
技能大赛程序设计笔试试卷
![技能大赛程序设计笔试试卷](https://img.taocdn.com/s3/m/a4bab1735fbfc77da369b10c.png)
XXX市技能大赛程序设计笔试试卷一、单项选择题(本题共15小题,每小题2分,共30分)1.操作系统是对__________进行管理的软件。
A.软件B.硬件C.计算机资源D.应用程序2. 现代操作系统的两个基本特征是和资源共享。
A.多道程序设计 B.实现分时与实时处理 C.程序的并发执行 D.中断处理 3. 在Excel工作表中,假定C3:C6区域内保存的数值依次为10、15、20、45,则函数=AVERAGE(C3:C6)的值为。
A.22B.22.5C.45D.904.在一棵具有n个结点的完全二叉树中,分枝结点的最大编号为。
A.((n+1)/2)上限取整 B.((n+1)/2)下限取整C.(n/2)下限取整 D.((n-1)/2)上限取整5. 一组记录的关键字为{45,80,50,40,42,85},则利用堆排序的方法建立的初始堆为。
A.80 45 50 40 42 85 B.85 80 50 40 42 45C.85 80 50 45 42 40 D.85 50 80 42 45 406.在数据库的三级模式体系中,内模式、模式和外模式个数的比例是。
A.1:1:N B.1:M:N C.1:1:1 D.M:N:P7. 面向对象的程序设计技术中对象有三个最基本的性质。
A.封装、继承、接口 B.封装、异常、继承C.抽象、自治、可视化 D.封装、继承、接口8. 软件测试中根据测试用例设计的方法的不同可分为黑盒测试和白盒测试两种,它们。
A.前者属于静态测试,后者属于动态测试 B.都属于静态测试C.前者属于动态测试,后者属于静态测试 D.都属于动态测试9. 若用如下的SQL语句创建了一个表S: CREATE TABLE S(Sid CHAR(6) NOT NULL, SNAME CHAR(8) NOT NULL,SEX CHAR(2),AGE INT),今向S表插入如下行时,可以被插入。
A.(‘991001’,‘李明芳’,女,‘23’) B.(‘990746’,’张为’,NULL,NULL)C.(NULL,‘陈道一’,‘男’,32) D.(‘992345’,NULL,‘女’,25)10. 若软件程序中使用的变量未设置初始值,则________。
程序设计大赛试题及答案
![程序设计大赛试题及答案](https://img.taocdn.com/s3/m/8a096c1b84868762cbaed501.png)
试题1、数学黑洞(程序文件名)【问题描述】任给一个4位正整数,其各位数位上的数字不全相同,将数字重新组合成一个最大的数与最小的数相减,重复这个过程,最多7步,必得6174。
对任给的4位正整数(各位数位上的数字不全相同),编程输出掉进黑洞的步数。
【输入】一行,一个4位正整数n(1000< n<9999)【输出】掉进黑洞的步数输入1234输出32、进制转换(程序文件名)【问题描述】任给一个十进制整数n,及正整数m(m<=16且m≠10), 将n转换成m进制并输出。
【输入】一行,两个整数n,m(0 ≤ n ≤ 500000,2 ≤ m ≤ 16,且m≠10),中间用一个空格隔开,其中n 表示十进制数。
【输出】转换后的数【输入输出样例】输入255 8输出3773、分数线划定(程序文件名)【问题描述】公务员选拔工作正在 A 市如火如荼的进行。
为了选拔优秀人才,A 市对所有报名的选手进行了笔试,笔试分数达到面试分数线的选手方可进入面试。
面试分数线根据计划录取人数的150%划定,即如果计划录取m名公务员,则面试分数线为排名第m*150%(向下取整)名的选手的分数,而最终进入面试的选手为笔试成绩不低于面试分数线的所有选手。
现在就请你编写程序划定面试分数线,并输出所有进入面试的选手的报名号和笔试成绩。
【输入】第一行,两个整数n,m(5 ≤ n ≤ 5000,3 ≤ m ≤ n),中间用一个空格隔开,其中n 表示报名参加笔试的选手总数,m 表示计划录取的人数。
输入数据保证m*150%向下取整后小于等于n。
第二行到第 n+1 行,每行包括两个整数,中间用一个空格隔开,分别是选手的报名号k(1000 ≤ k ≤ 9999)和该选手的笔试成绩s(1 ≤ s ≤ 100)。
数据保证选手的报名号各不相同。
【输出】第一行,有两个整数,用一个空格隔开,第一个整数表示面试分数线;第二个整数为进入面试的选手的实际人数。
c语言程序设计大赛初赛试题及答案
![c语言程序设计大赛初赛试题及答案](https://img.taocdn.com/s3/m/dea84ea55ebfc77da26925c52cc58bd6318693f8.png)
c语言程序设计大赛初赛试题及答案一、选择题(每题2分,共10分)1. 下列哪个选项是C语言中的关键字?A. intB. floatC. stringD. array答案:A2. C语言中,用于定义一个整型变量的关键字是?A. intB. charC. floatD. double答案:A3. 下列哪个选项不是C语言的标准输入输出函数?A. printfB. scanfC. coutD. getchar答案:C4. 在C语言中,下面哪个选项是正确的字符串定义?A. char str[] = "Hello";B. char str[] = {"Hello"};C. char str[] = 'Hello';D. char str[] = "Hello";答案:A5. 下列哪个选项是C语言中正确的注释方式?A. // This is a commentB. /* This is a comment */C. //* This is a commentD. /* This is a comment */答案:B二、填空题(每题3分,共15分)1. 在C语言中,定义一个整型数组可以使用关键字_________。
答案:int2. C语言中,_________函数用于输出字符串。
答案:printf3. C语言中,_________函数用于从标准输入读取一个字符。
答案:getchar4. C语言中,_________关键字用于定义一个函数。
答案:void5. C语言中,_________关键字用于定义一个结构体。
答案:struct三、编程题(每题10分,共20分)1. 编写一个函数,计算并返回两个整数的和。
```cint add(int a, int b) {return a + b;}```答案:```cint add(int a, int b) {return a + b;}```2. 编写一个程序,读取用户输入的两个整数,然后输出它们的乘积。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
“指院杯”第五届程序设计大赛题目(2011年6月12日)注意事项:1、考试时间为上午9:30-11:30,下午12:30-15:30。
2、考试编程环境为VC6.0。
3、考试结束后将所有的源代码、程序、相关文档打包,文件名为参赛编号,并上传到指定服务器。
确认后方可离开。
1、0的个数源程序名zero.c(zero.cpp)输入文件名 zero_in.txt输出文件名 zero_out.txt问题描述编写程序,计算n! (n<=100000)的尾部0的个数。
输入文件(zero_in.txt)包含一个整数n。
输出文件(zero_out.txt)输出n!尾部0的个数。
样例输入(exp_in.txt)26输出(exp_out.txt)62、洗牌加密法源程序名poker.c(poker.cpp)输入文件名 poker _in.txt输出文件名 poker_out.txt问题描述有一种根据扑克牌的洗牌原理设计的简单加密方法。
加密过程如下,将输入字符串,前后等分成两部分。
如果有奇数个字符,则后半部分多一个字符。
然后将前后两部分交叉,即从后半部分字符串取第一个字符,然后从前半部分取第一个字符,直到所有字符都取完。
这个过程重复n次。
例如:对于输入字符串(注:此处"号不是输入内容):“shaken not stirred”分成两半分别为“shaken no”“t stirred”交叉后得到:“ts hsatkiernr endo”再次处理后得到:“etrsn rh seantdkoi“现在要求根据密文和处理次数(相当于密钥)计算出明文。
输入文件(poker_in.txt)输入文件包含两行:前一行为密文内容,以.号结尾(.号不是密文内容),密文内容中不包含.号,后一行为密钥,即加密时重复的次数。
输出文件(poker_out.txt)输出数据仅有一行,即对密文,输出一行明文(以.结尾)。
样例输入(poker_in.txt)etrsn rh seantdkoi.2输出(poker_out.txt)shaken not stirred.3、猜数字源程序名guess.c(hand.cpp)输入文件名 guess_in.txt输出文件名 guess_out.txt问题描述猜数字是一个非常流行的电脑游戏,电脑选择四个不重复的数字,你要根据电脑的提示尽快猜出这个数字。
它的游戏规则如下:玩家首先输入四位不同的数字(0~9),电脑会根据玩家的输入和事先确定的数字进行匹配,并给出提示,提示的形式是“#A#B”,其中“#”是0~4的数字,“#A”表示猜中了数字及其位置的数目,“#B”表示仅猜中数字的数目。
例如,电脑选择的是“1234”,而玩家猜的数字是“6139”,那么电脑给出的提示是“1A2B”,因为数字“3”及猜中了数字,也猜对了位置,而数字“1”只猜中了数字,所以电脑给出的提示就是“1A2B”。
如果你在猜测一次数字之后仔细记录并观察电脑的提示,可以计算出电脑所给出的实际的数字。
输入文件(guess_in.txt)包含了多个测试序列,每个序列的第一行是一个单独的正整数N,它表示猜测的次数,接下来的N 行表示N次猜想的记录。
它的形式为:#### #A#B其中前面四个数字是猜想的数字,后面是电脑对猜想的提示。
输入的N为0或者为负数则表明输入结束,并且无须处理,而且每个测试序列都提供了足够的信息,可以让你猜出该数字。
输出文件(guess_out.txt)输出:对于每个测试序列,输出一行,给出电脑选定的数字,要求数字和位置都正确。
样例输入(guess_in.txt)58760 0A2B7845 0A2B0418 0A1B4976 1A2B3987 0A2B输出(guess_out.txt)50794、HTML解析程序源程序名html.c(html.cpp)输入文件名 html_in.txt输出文件名 html_out.txt问题描述HTML是Web页面的基本格式,由HTML标签构成,标签的语法格式为:<标签名属性=值属性=值属性=值>标签内容</标签名>其中<标签名…>是标签的开始,</标签名>是标签的结束,开始和结束的标签名必须一致,结束的标签名之前有/符号,例如:<title>这是一个标题</title><p>这是一个段落</p><b>这是加粗字体</b>标签中可以包含一个或多个属性,格式为属性=值,属性之间以空格分割,例如:<body bgcolor=blue text=red>…</body>标签可以嵌套,也就是说标签的内容可以是一个或多个另外的标签,例如:<body><table><tr><td>第1行第1列</td><td>第1行第2列</td></tr><tr><td>第2行第1列</td><td>第2行第2列</td></tr></table></body>最终的完整的HTML结构就是由这些嵌套的标签构成,忽略多余的回车和空格(多个空格只算一个)现请编写HTML解析程序,要求如下:将给定的HTML文件中内容的解析成树结构,其中每一个标签为树的一个结点,其子标签以该结点的子结点表示,形成完整的由解析出来的以标签为结点构成的树,输出此树的按层遍历序列(树的每个结点以标签名表示)。
输入文件(html_in.txt)存放的内容为HTML文件内容。
输出文件(html_out.txt)由输入的HTML文件内容求其解析成树结构的按层遍历序列(树的每层结点在一行,每个结点以空格间隔)。
样例:输入(html_in.txt)<html><head><title>标题</title></head><body bgcolor=blue text=red><table border=1px><tr><td>第1行第1列</td><td>第1行第2列</td></tr><tr><td>第2行第1列</td><td>第2行第2列</td></tr></table></body></html>输出(html_out.txt)htmlhead bodytitle tabletr trtd td td td5、分组考核源程序名 exam.c(exam.cpp)输入文件名 exam_in.txt输出文件名 exam_out.txt问题描述某军校应届毕业学员即将举行军事共同科目的考核,所有参加考核的学员共划分为M个小组,编号为A1,A2…A m。
需要考核的科目共N项,表示为K1,K2…Kn(N ≤M)。
考核场地为野外综合训练场,每个分组划分了各自的区域,每个区域均能进行全部科目的考核,每项考核的时间大致为半天,原定计划为各分组同时进行相同科目的考核。
在考核前一周接到通知,上级有关部门会在考核开始的当天上午到现场对考核过程进行参观检查,虽然时间只有半天,但检查组希望能看到所有科目的考核情况。
因此,考核领导小组决定重新安排考核计划,作出了检查当天上午考核科目的安排原则:(1)要进行所有科目的考核。
(2)如果两个分组的区域是相邻的,则这两个分组的考核科目不能相同,以节约检查组在场地间转移的时间。
(3)如果一个分组不与其它分组相邻,则其考核科目可以不受限定。
问:该上午的考核科目有多少种安排方式能满足上面的要求?输入文件(exam_in.txt)包含了分组数、考核科目数,各分组的相邻关系。
第1行为分组数和科目数,以空格分开。
第1行之后的第i行表示与分组A i相邻的分组编号,以0 作为结尾。
如下为输入文件的一个例子:4 2 4个分组,2考核科目2 3 0 分组A1与分组A2、A3相邻1 0 分组A2与分组A1相邻1 4 0 分组A3与分组A1、A4相邻3 0 分组A4与分组A3相邻输出文件(exam_out.txt)如果不存在满足要求的安排方式,则输出0,否则输出可行的安排方法数目。
如上例的输出文件内容为:26、正整数之和源程序名sum.c(sum.cpp)输入文件名 sum_in.txt输出文件名 sum_out.txt问题描述一个正整数有可能可以被表示为n(n>=2)个连续正整数之和,如:15=1+2+3+4+515=4+5+615=7+8请编写程序,根据输入的任何一个正整数,找出符合这种要求的所有连续正整数序列。
输入文件(sum_in.txt)输入文件有一行,每行为一个测试用例,包含一个正整数n。
(n <= 5842)输出文件(sum_out.txt)输出符合题目描述的全部正整数序列,每行一个序列,每个序列都从该序列的最小正整数开始、以从小到大的顺序打印。
如果结果有多个序列,按各序列的最小正整数的大小从小到大输出。
此外,序列不允许重复,序列内的整数用+分隔。
样例输入(sum_in.txt)15输出(sum_out.txt)15=1+2+3+4+515=4+5+615=7+87、括号匹配源程序名match.c(match.cpp)输入文件名 match_in.txt输出文件名 match_out.txt问题描述定义一个由圆括号和方括号组成的串的合法性:(1)一个空串是合法的串;(2)如果s是一个合法的串,则[s]和(s)也是合法的串;(3)a和b是合法的串,则ab是合法的串;(4)除此之外,其他的串都不是合法的串。
现在给出一个由圆括号和方括号组成的串,如果它不是一个合法的串,那去掉其中的一些括号,使其成为一个合法的串,求得到的合法的串的最大长度,若无法得到一个合法的串,则其最大长度为0。
输入文件(match_in.txt)输入文件包含一行:一个由圆括号和方括号组成的串。
输出文件(match_out.txt)输出只有一个数,即得到的合法的串的最大长度。
样例输入(match_in.txt)([([)]))输出(match_out.txt)68、选址源程序名address.c(address.cpp)输入文件名 address_in.txt输出文件名 address_out.txt问题描述按照一般的城市社区规划,某城市在远郊区新建由若干个(比如n个,n<=100)小区组成的居民区群,各小区之间均有道路互通。