【#第一文档网# 导语】以下是®第一文档网的小编为您整理的《20110625信息学奥赛自我评测》,欢迎阅读!

信息学奥赛课堂自测六 时间:2011-6-25
杨辉三角形(Triangle)
【程序名称】triangle.exe
【源程序名】triangle.(pas/c/cpp) 【输入文件】triangle.in 【输出文件】triangle.out 【问题描述】
有一个数字三角是我国古代著名数学家杨辉首先提出的,这个数字三角如下图所示:
1 1 1 1 2 1 1 3 3 1 1 4 6 4 1 „„
现在给你一个正整数n,请你用递归算法给出杨辉的前n行。 【输入数据】
输入文件共一行,包含一个正整数n(1≤n≤20)。 【输出数据】
输出文件共n行,即杨辉三角的前n行。每行包含若干正整数,这些正整数之间用一个空格隔开(不能有多余的空格),最后一个正整数后面没有空格。 【样例】
triangle.in 4
triangle.out 1 1 1 1 2 1 1 3 3 1
多米诺骨牌(Domino)
【程序名称】domino.exe
【源程序名】domino.(pas/c/cpp) 【输入文件】domino.in 【输出文件】domino.out 【问题描述】
有N块1×2大小的骨牌需要放入一个2×N的牌盒中,请问共有多少种放法(输出总放法数的最后100位即可)。 【输入数据】
输入数据仅一个自然数N(N≤10)。 【输出数据】
输出数据共4行,每行25位,共100位。表示总放法数的最后100位。不满100位时高位用0补足。
6
【样例】
domino.in 5
domino.out
0000000000000000000000000 0000000000000000000000000 0000000000000000000000000 0000000000000000000000008
走楼梯(Stairs)
【程序名称】stairs.exe
【源程序名】stairs.(pas/c/cpp) 【输入文件】stairs.in 【输出文件】stairs.out 【问题描述】
有一楼梯共N阶,由于年久失修,其中有K阶台阶已经损坏(人不能在损坏的台阶上停留),已知某人一次能上一阶、两阶或三阶台阶,请问,此人从楼梯底部走到楼梯顶部,共有多少种走法。 【输入数据】
输入数据共两行,第一行包含两个自然数N(1≤N≤100)和K(0≤K<N),第二行包含K个自然数Xi(1≤Xi≤N),数字之间用一个空格隔开,表示损坏的台阶的序号(从楼梯底部到楼梯顶部,台阶序号依次为1~N)。 【输出数据】
输出数据仅包含一个整数,表示所有可行走法的总数。 【样例】
stairs.in 5 2 2 4 stairs.out 2
棋盘控制(Board)
【程序名称】board.exe
【源程序名】board.(pas/c/cpp)
【输入文件】board.in 【输出文件】board.out 【问题描述】
在一个N×N的棋盘上放置K(K≤N)个中国象棋中的“車”,要求这K个“車”不能相互攻击,请问总共有多少种摆放方法。
【输入数据】
输入数据仅一行,包含两个整数N(1≤N≤20)和K,数字中间用空格隔开。 【输出数据】
输出数据仅一个整数,即总摆放方法数。 【样例】
braod.in 3 2
broad.out 18
本文来源:https://www.dy1993.cn/NwE.html