QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 7080|回复: 6
打印 上一主题 下一主题

Contest - “顶嵌杯”全国嵌入式系统C语言编程大赛初赛

[复制链接]
字体大小: 正常 放大
ultra1989 实名认证    中国数模人才认证   

20

主题

65

听众

2071

积分

ACMer

升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    跳转到指定楼层
    1#
    发表于 2010-1-6 15:27 |只看该作者 |倒序浏览
    |招呼Ta 关注Ta
    : k) Z! p2 V, b+ a, v
    Problem A: 位操作
    ! _* K0 R& i/ ]: I$ l
    Time Limit: 1000MSMemory Limit: 65536K
    Total Submissions: 1884Accepted: 580
    " b' I5 P) W6 S. ?

    Description

    假设你工作在一个32位的机器上,你需要将某一个外设寄存器的第X位设置成0(最低位为第0位,最高位为第31位),将第Y位开始的连续三位设置成110(从高位到低位的顺序),而其他位保持不变。对给定的寄存器值R,及X,Y,编程计算更改后的寄存器值R。7 f7 Z" ^' @7 o' ~0 \

    Input

    仅一行,包括R,X,Y,以逗号","分隔,R为16进制表示的32位整数,X,Y在0-31之间且Y>=3,(Y-X)的绝对值>=3,保证两次置位不会重合
    ( W) l& s" e7 ]! l- _7 s

    Output

    更改后的寄存器值R(16进制输出)' a# \" I' V% H8 C% z

    Sample Input

    12345678,0,3

    Sample Output

    1234567c
    zan
    转播转播0 分享淘帖0 分享分享0 收藏收藏0 支持支持0 反对反对0 微信微信
    Once a ranger, forever a ranger!
    山心豆 实名认证       

    6

    主题

    9

    听众

    504

    积分

    升级  68%

  • TA的每日心情
    奋斗
    2020-2-3 22:36
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    群组数学建摸协会

    群组Matlab讨论组

    群组Linux推广

    回复

    使用道具 举报

    ultra1989 实名认证    中国数模人才认证   

    20

    主题

    65

    听众

    2071

    积分

    ACMer

    升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    Problem B: 破译密码
    1 O4 n+ x1 s  ?. v4 ^# Y$ ^. MTime Limit: 1000MS                Memory Limit: 65536K4 J- F4 I! x2 W6 v: l
    Total Submissions: 998                Accepted: 667
    & b' o3 w) q# E' ~: X! d+ Y; xDescription/ u4 m- m2 I9 X2 Y5 V. x

    ! t) n# s/ ]$ M2 X5 O1 x据说最早的密码来自于罗马的凯撒大帝。消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A都分别替换成字母F)。而你要获得消息原文,也就是要将这个过程反过来。
    6 O- M7 z7 v  ~; Q$ C
    4 j! j4 i: H) V5 _; x" ^0 d密码字母:A B C D E F G H I J K L M N O P Q R S T U V W X Y Z M - Q- x8 _, g, l( K5 H- j
    原文字母:V W X Y Z A B C D E F G H I J K L M N O P Q R S T U ( g, ^* ?: _  J. t; C2 `
    $ z, `  g  Y; N) L3 B& q
    注意:只有字母会发生替换,其他非字母的字符不变,并且消息原文的所有字母都是大写的。
    % B- O; I1 p; D: ?- SInput) j/ H1 k1 y2 r+ l( G# x7 R
    & c* ~+ {( Q! _' w) s5 q& L4 G
    最多不超过100个数据集组成,每个数据集之间不会有空行,每个数据集由3部分组成:
    " Y$ }3 V( i" L, J$ T" ?5 Z  T6 w  Z4 g1 z/ F, i
    起始行:START0 ~% ~- p) Y! q' V! B
    密码消息:由1到200个字符组成一行,表示凯撒发出的一条消息., `) G/ n; l- w. ^$ i/ [$ l4 K# \7 S3 g
    结束行:END
    * a/ i8 y8 ^' i8 C9 O: h: N' j' \' ~  m  Y; G

    ' F( i6 I$ M% e' V, v在最后一个数据集之后,是另一行:ENDOFINPUT
    5 e% `: ~$ G/ U. H( K9 ZOutput
    ) i- h7 [  A# ?& T4 k, G( C0 w& [2 z! o1 x! A
    每个数据集对应一行,是凯撒的原始消息。
    - ?! q+ l1 i8 n1 o' }' U) xSample Input
    . z5 g# c; T$ N0 i
    4 Q) _0 G: X: SSTART
    + ?9 p" a% C- v! u; w7 z; h" ZNS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
      Z0 J( F7 q1 x- }' P( VEND4 o/ U+ A0 b# Z7 M* _6 r- q
    START
    2 T8 d8 R* j  sN BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ% M' s( y( Y% P+ {1 ]2 ^
    END
    4 J! n& |0 S) t, kSTART6 {3 [7 h6 }* c0 ]
    IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ7 ]: Z0 v9 @; y
    END
    " c1 q# k) ~& j5 \/ s& gENDOFINPUT
    ; w) o  s3 R- U* }, l% \, k( nSample Output+ u7 L' ^- w4 F0 q* j

    ( D0 }' \" ~  t* E" D! EIN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES
    " T# C7 i/ L  nI WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME7 G7 B9 K! Z3 [/ O6 F: f
    DANGER KNOWS FULL WELL THAT CAESAR IS MORE DANGEROUS THAN HE
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    ultra1989 实名认证    中国数模人才认证   

    20

    主题

    65

    听众

    2071

    积分

    ACMer

    升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    Problem C: 小孩报数问题
    ' ]4 O8 E9 W) d: ?) R! m8 K6 L$ pTime Limit: 1000MS                Memory Limit: 65536K" O% R: v; _; z2 j3 K7 Y
    Total Submissions: 1284                Accepted: 592: \  ]0 W  d7 b8 X" ?1 f" m: i
    Description/ s" M+ [7 z& q! e# G( ]" t+ \

    ! p8 Y( H4 T/ K1 a* d+ J有N个小孩围成一圈,给他们从1开始依次编号,现指定从第W个开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到S个出列,如此重复下去,直到所有的小孩都出列(总人数不足S个时将循环报数),求小孩出列的顺序。4 x( y# w& d9 f  p1 S( g- x6 H' m
    Input
    7 D2 w7 G" Z3 ?/ k2 x* I( h6 n0 [5 J3 }' M% Y: k
    第一行输入小孩的人数N(N<=64)
    ( z4 e1 m6 T) ~- E1 A# d" j3 A接下来每行输入一个小孩的名字(人名不超过15个字符)
    , y) i1 p! H4 m7 O3 r5 n: X最后一行输入W,S (W < N),用逗号","间隔: \" v2 J4 V; O' {" I' t
    Output; p% \, p2 M" R" U1 E

    " O, K, r8 w' h$ x0 J/ `按人名输出小孩按顺序出列的顺序,每行输出一个人名/ N' q% l6 t+ }5 N3 |! G$ V+ O
    Sample Input. v# n1 B' ~2 C! c/ @
    7 z- P: W4 U* a# n7 ~3 X& x
    5
    % ?8 U' G. D7 q* D) T1 uXiaoming; e1 r9 e) [. B0 H& J4 }! \) _
    Xiaohua
    % t8 B7 Q( N) T) mXiaowang: z1 `) M  @! V+ R/ Z' g
    Zhangsan+ n- v7 U- x  [
    Lisi
    ) A! c/ i2 X3 e; }4 F2,3
    2 t4 B8 R' X0 p. d: D: g* T; bSample Output; c  [0 m9 g8 r8 g

    # v4 t! R; u9 Z5 w  O4 vZhangsan# m6 x% t0 P- Q. ]
    Xiaohua3 L& H! m7 z7 r5 T
    Xiaoming3 d* K6 b( [8 u( q  F
    Xiaowang# |8 ?- n! h" O% Q4 Q
    Lisi
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    ultra1989 实名认证    中国数模人才认证   

    20

    主题

    65

    听众

    2071

    积分

    ACMer

    升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    Problem D: 时间日期格式转换
    ( {$ ?; z  Y: M" DTime Limit: 1000MS                Memory Limit: 65536K
    & @5 M( Q$ K. [- J8 @Total Submissions: 1088                Accepted: 5705 Z& N" i% _7 Q5 s
    Description  ?- z* A- p2 p8 B/ X. d+ [7 m$ P

    9 q  p7 G% v' p2 b世界各地有多种格式来表示日期和时间。对于日期的常用格式,在中国常采用格式的是“年年年年/月月/日日”或写为英语缩略表示的”yyyy/mm/dd”,此次编程大赛的启动日期“2009/11/07”就是符合这种格式的一个日期,而北美所用的日期格式则为“月月/日日/年年年年”或”mm/dd/yyyy”,如将“2009/11/07”改成这种格式,对应的则是”11/07/2009”。对于时间的格式,则常有12小时制和24小时制的表示方法,24小时制用0-24来表示一天中的24小时,而12小时制只采用1-12表示小时,再加上am/pm来表示上午或下午,比如”17:30:00”是采用24小时制来表示时间,而对应的12小时制的表示方法是”05:30:00pm”。注意12:00:00pm表示中午12点,而12:00:00am表示凌晨12点。
    : [7 s, L% G/ X( X- e& g+ d. j, o* l, M, \
    对于给定的采用”yyyy/mm/dd”加24小时制(用短横线”-”连接)来表示日期和时间的字符串,请编程实现将其转换成”mm/dd/yyyy”加12小时制格式的字符串。. h4 c% I, v; ]& o
    Input
    . J8 X" F* r; b5 b6 \" L9 t
    ' G* m. L! }# v+ A& c第一行为一个整数T(T<=10),代表总共需要转换的时间日期字符串的数目。 ! g2 b8 l( i% h3 n
    接下来的总共T行,每行都是一个需要转换的时间日期字符串。
    2 w9 r1 r8 V4 ?Output
    / x: B0 v* K  d- a2 g
    9 ?( F! K( [1 g7 {0 P* m( ^% F分行输出转换之后的结果
    + |, C1 W. e  ]6 u" rSample Input6 {3 N+ V- O: m4 o/ e1 f- n
    , G. Q4 {; H- O/ x& ^4 W3 ~- S
    2
    $ w' j, P$ N& u# s* l1 I2009/11/07-12:12:129 [3 |1 u0 y. O. k
    1970/01/01-00:01:01
      O9 `3 o) x1 m5 gSample Output
    ; F% T" |! S# L* {+ i& x' u3 D& c
    11/07/2009-12:12:12pm1 |+ N. R5 O' x& I
    01/01/1970-12:01:01am
    . B/ V3 V( l; a* ~% ~, z6 t+ ~Hint5 c1 U2 f2 ^. v4 W( s5 h

    % z) t7 G/ A" h+ M7 g注意中午和凌晨时间的特殊表示
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    ultra1989 实名认证    中国数模人才认证   

    20

    主题

    65

    听众

    2071

    积分

    ACMer

    升级  2.37%

  • TA的每日心情
    开心
    2015-2-25 23:29
  • 签到天数: 240 天

    [LV.8]以坛为家I

    新人进步奖

    群组Linux推广

    群组Matlab讨论组

    群组数学建模

    Problem E: 字母旋转游戏
    - s$ C* I0 F% k8 G$ G* B! G4 ]Time Limit: 1000MS                Memory Limit: 65536K
    / u6 s" L) r! M7 }3 VTotal Submissions: 1477                Accepted: 542. w) @" o. W! c& H: V4 `
    Description
    / U6 m* X& i3 m) G: Y- p2 b: r
    给定两个整数M,N,生成一个M*N的矩阵,矩阵中元素取值为A至Z的26个字母中的一个,A在左上角,其余各数按顺时针方向旋转前进,依次递增放置,当超过26时又从A开始填充。例如,当M=5,N=8时,矩阵中的内容如下:
    0 \% j. W% r& o! ?2 {   A   B   C   D   E   F   G   H
    % o8 u' z, e( }: Q4 p, u
    3 A4 g/ e+ M( u   V   W   X   Y   Z   A   B   I
    ( _0 m. W6 p( U+ B& g6 v2 Y6 B4 c1 M+ v: @5 s
       U   J   K   L   M   N   C   J6 s* |( z5 p+ c

    8 k: u" P* u) K5 l   T   I   H   G   F   E   D   K! A  |3 Y, P* ?2 _. n, m

    $ n( A( P" [! G) B2 l& I   S   R   Q   P   O   N   M   L
    1 M( @4 k5 K4 V- T5 ^& H& F& jInput
    3 G% W' B3 Z& K' R7 |/ V- `* \8 Z; X, i
    M为行数,N为列数,其中M,N都为大于0的整数。
    # e. t9 F; u1 @Output
    6 t# z  P3 l; @. Y8 A1 t* E+ a1 a! X8 j
    分行输出相应的结果) b! Y. M( e  G* N# e- R1 f
    Sample Input1 D9 Q7 C+ y0 f
    1 W- j9 R4 X0 R0 ~
    4 9# a3 c: E* F2 V
    Sample Output
      S( X3 w6 a+ j+ o) H0 ]0 \- ~$ I3 s* P. T3 D
       A   B   C   D   E   F   G   H   I
    # ^6 T% K: F& @3 _/ V- ]8 W   V   W   X   Y   Z   A   B   C   J; x7 I  M2 A& m/ G
       U   J   I   H   G   F   E   D   K
    - R* l" S, O2 ]: h8 M  r& Q   T   S   R   Q   P   O   N   M   L
    Once a ranger, forever a ranger!
    回复

    使用道具 举报

    徐小培 实名认证       

    1

    主题

    3

    听众

    285

    积分

    升级  92.5%

  • TA的每日心情
    开心
    2012-2-11 19:20
  • 签到天数: 4 天

    [LV.2]偶尔看看I

    自我介绍
    我:徐小培。

    人生关键的只有几步,保持好的心情,踏踏实实走完就是一种成功。

    新人进步奖

    群组数学建模

    群组ACM算法讨论组

    群组渭南师范学院数学建模协会

    群组数学建摸协会

    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 注册地址

    qq
    收缩
    • 电话咨询

    • 04714969085
    fastpost

    关于我们| 联系我们| 诚征英才| 对外合作| 产品服务| QQ

    手机版|Archiver| |繁體中文 手机客户端  

    蒙公网安备 15010502000194号

    Powered by Discuz! X2.5   © 2001-2013 数学建模网-数学中国 ( 蒙ICP备14002410号-3 蒙BBS备-0002号 )     论坛法律顾问:王兆丰

    GMT+8, 2026-6-20 21:33 , Processed in 0.566821 second(s), 84 queries .

    回顶部