收藏本页
联系我们
论坛帮助

>> 这里讨论计算机的基础和设计到程序设计的数学问题。关于初赛的相关问题也可以到这里来!
趣题之家信息学竞赛计算机基础 → 第十届全国青少年信息学奥林匹克联赛初赛试题及答案(提高组)

  发表一个新帖子  发起一个新投票  回复本主题 您是本帖的第 1332 个阅读者
  标题:第十届全国青少年信息学奥林匹克联赛初赛试题及答案(提高组) 树形   打印   收藏   推荐  
     帅哥哟,离线,有人找我吗?
    
    
    等级:管理员
    威望:50
    文章:291
    积分:669
    注册:2003-05-18
 QQ 给趣题之主发送一个短消息 把趣题之主加入好友 查看趣题之主的个人资料 搜索趣题之主在的所有贴子 点击这里发送电邮给趣题之主 访问趣题之主的主页引用回复这个贴子 回复这个贴子 楼主
发贴心情 第十届全国青少年信息学奥林匹克联赛初赛试题及答案(提高组)
====================
= 您没有浏览该精华帖子的权限 =
====================
  
发贴IP已设置保密 2004-10-17 17:21
       
     帅哥哟,离线,有人找我吗?
    
    
    等级:管理员
    威望:50
    文章:291
    积分:669
    注册:2003-05-18
 QQ 给趣题之主发送一个短消息 把趣题之主加入好友 查看趣题之主的个人资料 搜索趣题之主在的所有贴子 点击这里发送电邮给趣题之主 访问趣题之主的主页引用回复这个贴子 回复这个贴子 2
发贴心情

五、 完善程序(前5空,每空2分;后6空,每空3分,共28分)
1.Joseph
题目描述:
原始的Joseph问题的描述如下:有n个人围坐在一个圆桌周围,把这n个人依次编号为1,……,n。从编号是1 的人开始报数,数到m个人出列,然后从出列的下一个人重新开始报数,数到第m个人又出列,……,如此反复直到所有的人全部出列为止。比如当n=6,m=5的时候,出列的顺序依次是5,4,6,2,3,1。
现在的问题是:假设有k个好人和k个坏人。好人的编号是1到k,坏人的编号是k+1到2k。我们希望求出m的最小值,使得最先出列的k个人都是坏人。
输入:
仅有的一个数字是k (0 < K<14)。
输出:
使得最先出列的k个人都是坏人的m的最小值。
输入样例:
4
输出样例:
30
程序:
program progaram1;
var
i,k,m,start:longint;
find:boolean;
func tion check(remain:integer):boolean;
var result:integer;
begin

result:=____(1)____ mod remain;
if ____(2)____ then begin
start:=result; check:=true;
end
else check:=false;
end;
begin
find:=false;
read(k);
m:=k;
while ____(3)____ do begin
find:=true; start;=0;
for i:=0 to k-1 do
if (not check(____(4)____)) then begin
find:=false; break;
end;
inc(m);
end;
writeln(____(5)____);
end.


2.逻辑游戏
题目描述:
一个同学给了我一个逻辑游戏。他给了我图1,在这个图上,每一段边界都已经进行了编号。我的任务是在图中画一条连续的曲线,使得这条曲线穿过每一个边界一次且仅穿过一次,而且曲线的起点和终点都在这个区域的外面。这条曲线是容许自交的。



对于图1,我同学告诉我画出这样的一条曲线(图2)是不可能的,但是对于有的图形(比如图3),画出这样一条曲线是可行的。对于给定的一个图,我想知道是否可以画出满足要求的曲线。



图1 图2



图3
1 1 2
1 2 2
1 1 2
图4
输入:
输入的图形用一个n*n的矩阵表示。矩阵的每一个单元里有一个0到255这间的整数(包括0和255)。处于同一个区域的单元里的数相同,相邻的区域的数不同(但是不相邻的区域里的可能相同)。
输入的第一行是n


program program2;
const
  d:array[0..7] of integer =(1,0,-1,0,0,1,____(1)____);
var
  orig,n,i,j,ns:integer;
  a:array[0..100,0..101] of integer;
  bun:boolean;
procedure plimba(x,y:integer);
var i,x1,y1:integer;
begin
  a[x,y]:=-a[x,y];
  if (abs(a[x-1,y],)  a[x+1,y]) or (abs(a[x,y-1],) orig) and ((a[x+1,y-1] orig)) then inc(ns);
if (abs(a[x,y-1],)  a[x,y-1]) or (abs(a[x-1,y],) orig) and ((a[x-1,y+1] orig)) then inc(ns);
for i:=0 to 3 do begin
  x1:=x + d[2 * i]; y1:=y + ____(4)____;
if  (x1>=1) and (x1=1) and (y1-1 then begin
     ns:=0;
     ____(6)____;
    plimba(i,j);
    if ns mod 2 =1 then bun:=false;
   end;
   if bun then writeln(‘YES’);
   if not bun then writeln(‘NO’);
end.  
摘自 大榕树


[此贴子已经被作者于2004-10-17 17:41:25编辑过]
发贴IP已设置保密 2004-10-17 17:36
       
     帅哥哟,离线,有人找我吗?
    
    
    等级:管理员
    威望:50
    文章:291
    积分:669
    注册:2003-05-18
 QQ 给趣题之主发送一个短消息 把趣题之主加入好友 查看趣题之主的个人资料 搜索趣题之主在的所有贴子 点击这里发送电邮给趣题之主 访问趣题之主的主页引用回复这个贴子 回复这个贴子 3
发贴心情

参考答案:
A D E C B B C D C A
BC ACDE BCD D AC BE ADE ACD ABDE BCE
问题求解10 abdfgec
阅读程序263
328
1 4 2 1 3 3
-400
完善程序start+m-1 result>=k not find 2*k-i m-1
0,-1 a[x-1,y-1] a[x-1,y-1] d[2*i+1] a[x1,y1]=orig orig:=a[i,j]

发贴IP已设置保密 2004-10-17 17:36
       

 3   3   1/1页      1    


网上贸易 创造奇迹! 阿里巴巴 Alibaba

Powered By Dvbbs Version 7.1.0
Copyright ©2003 - 2006 QTHome.Org
页面执行时间 00.42188 秒, 3 次数据查询
本论坛采用阿里巴巴支付宝网上银行支付系统,安全、可靠、便捷