QQ登录

只需要一步,快速开始

 注册地址  找回密码
查看: 6853|回复: 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

    * U0 `2 `/ y" \( D# o
    Problem A: 位操作

    . s6 h4 M# b0 }! H7 g1 Q
    Time Limit: 1000MSMemory Limit: 65536K
    Total Submissions: 1884Accepted: 580

    / y8 l' X" y$ D

    Description

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

    Input

    仅一行,包括R,X,Y,以逗号","分隔,R为16进制表示的32位整数,X,Y在0-31之间且Y>=3,(Y-X)的绝对值>=3,保证两次置位不会重合
    % P) j, J9 P9 P/ N$ w* x

    Output

    更改后的寄存器值R(16进制输出)
    4 I' E/ N# T' D& S8 I

    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: 破译密码
    # ~/ I) o0 T7 b! W0 LTime Limit: 1000MS                Memory Limit: 65536K
    0 i( r  Y4 `. ?" a6 H: qTotal Submissions: 998                Accepted: 667
    6 t9 D5 P, d8 c+ [  K8 d4 i, iDescription& A8 s# @8 k7 L

    + s: w1 E: x# `; a: b" M8 _据说最早的密码来自于罗马的凯撒大帝。消息加密的办法是:对消息原文中的每个字母,分别用该字母之后的第5个字母替换(例如:消息原文中的每个字母A都分别替换成字母F)。而你要获得消息原文,也就是要将这个过程反过来。 : I. c$ N1 T1 Z9 \0 |2 ]

    9 R; a! G0 p4 y/ U# n3 F密码字母: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 ! ]- w, H. f: r+ U( d/ d' ^' E
    原文字母: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 8 o% g& C; Z* p4 g1 s$ c& K$ V

    " w$ c, I) y2 @" a' H+ Q9 _注意:只有字母会发生替换,其他非字母的字符不变,并且消息原文的所有字母都是大写的。
    $ o, [* i; l9 ?+ uInput
    ' p9 Q; E$ P: r0 d4 d. g: @* f* |4 R% k
    最多不超过100个数据集组成,每个数据集之间不会有空行,每个数据集由3部分组成:
    ' x8 G& V7 [3 q: {$ g9 ^
    # [0 @: V# v: b4 p起始行:START5 _0 e/ w" L: M; ?
    密码消息:由1到200个字符组成一行,表示凯撒发出的一条消息.2 G2 O3 ~9 t4 H: R& N
    结束行:END
    ! w9 L5 G6 m  _+ ^$ }
    , Y. B- S/ Q* y/ R$ \7 c! k- c0 E4 N' ^( q6 H
    在最后一个数据集之后,是另一行:ENDOFINPUT, r1 L  Y' ?$ Q
    Output9 b) J/ ^( a. ~! E
    1 z6 E! o1 D, d7 f% A  w, E7 n
    每个数据集对应一行,是凯撒的原始消息。
    9 j  G6 e# N4 f/ }9 Y  q7 hSample Input
    - f) F1 C5 n. w% _& ]( M' \( i8 x% X$ l8 X
    START: M. c1 a' P( d6 L( v
    NS BFW, JAJSYX TK NRUTWYFSHJ FWJ YMJ WJXZQY TK YWNANFQ HFZXJX
    , m9 {2 r* L& v' P" nEND2 [  T7 u' F. @) e) j& B
    START
    5 c, j) C' L4 BN BTZQI WFYMJW GJ KNWXY NS F QNYYQJ NGJWNFS ANQQFLJ YMFS XJHTSI NS WTRJ
      X+ a& F7 k& o) REND$ b) f' d- U4 A
    START5 G3 E  [9 Y5 s9 U
    IFSLJW PSTBX KZQQ BJQQ YMFY HFJXFW NX RTWJ IFSLJWTZX YMFS MJ
    # K6 }6 l* R3 L5 `: REND
    - G! E& b& U3 t2 ]3 d- ]; t0 e/ [" OENDOFINPUT* u% F- i8 ]: F! P2 S/ I7 O* B
    Sample Output8 _5 N! \; _0 i/ A6 q( B0 y3 D

    ( y( T* d9 J- h2 ^& LIN WAR, EVENTS OF IMPORTANCE ARE THE RESULT OF TRIVIAL CAUSES  Q) G% o0 X/ P" e, H- I
    I WOULD RATHER BE FIRST IN A LITTLE IBERIAN VILLAGE THAN SECOND IN ROME
    1 x" q  T9 O) A+ e, UDANGER 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: 小孩报数问题9 f* G" _' u9 C' B/ G
    Time Limit: 1000MS                Memory Limit: 65536K
    $ ~4 L& [$ q  G" D, P8 o3 oTotal Submissions: 1284                Accepted: 592
    / h$ D# l9 b# o6 P: |6 T4 |1 G0 cDescription  _8 T5 H9 p/ b6 O
    + x- F3 M7 ?# x+ E! E5 i: m! C
    有N个小孩围成一圈,给他们从1开始依次编号,现指定从第W个开始报数,报到第S个时,该小孩出列,然后从下一个小孩开始报数,仍是报到S个出列,如此重复下去,直到所有的小孩都出列(总人数不足S个时将循环报数),求小孩出列的顺序。
    0 Y; w' M# F4 L  O/ [Input7 b; k4 r( g' x2 [# H- y, L
    $ K2 _) f+ f3 [( W
    第一行输入小孩的人数N(N<=64) 8 }: J$ l9 q; b1 f
    接下来每行输入一个小孩的名字(人名不超过15个字符)
    2 G, l5 D% P9 a6 u& M最后一行输入W,S (W < N),用逗号","间隔' x5 l( {6 M; N( t1 S8 [  w( r  G: L
    Output+ i5 ~" c8 ~+ @, Q2 Q) _* ~( v0 F

    : j; d8 W/ d( q+ x按人名输出小孩按顺序出列的顺序,每行输出一个人名) D, o, F( k: h% U
    Sample Input
    % H$ M3 W( E! ^1 P3 S+ u8 ?( Q+ G8 n; U! v: G3 s
    5
      I' ?; v4 L' B- q0 Z9 v/ n' P+ hXiaoming3 ]3 j1 D! z' t( J! L/ r
    Xiaohua
    % e" U- u/ g& q7 D$ ~0 j) f9 BXiaowang) F. B% b3 [9 L+ o
    Zhangsan: E. Z- b/ d9 T; @2 F$ h) h
    Lisi
    4 n2 e8 A3 K) L5 t! v1 s' f2,3* ?: P  ~6 Y3 D5 t: }, K7 l0 e( w
    Sample Output
    - _" Y1 t# n9 e& M* `: Z, }# V% g& T, u! k  u0 B" y8 M
    Zhangsan
    " Y5 s$ |( N6 N. \7 l# T4 ~Xiaohua
    ' T& U5 ~, H, O) j$ F/ ^Xiaoming, {5 b7 [8 _1 v% W$ w
    Xiaowang6 Z- I4 ^6 s, ?& t; D, P3 n
    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: 时间日期格式转换# @. U6 {* N( b% [% l
    Time Limit: 1000MS                Memory Limit: 65536K
    6 W6 _4 x2 j3 g. T6 a. d! OTotal Submissions: 1088                Accepted: 5703 w' W- f  G; v, o
    Description
    # I6 B9 y1 G6 L7 M- L: c9 M! A; v6 v, |: o& Y4 |+ `
    世界各地有多种格式来表示日期和时间。对于日期的常用格式,在中国常采用格式的是“年年年年/月月/日日”或写为英语缩略表示的”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点。 ( e& a% s. f) o( O7 W
    $ p# Z" \4 _0 L6 B  {: _
    对于给定的采用”yyyy/mm/dd”加24小时制(用短横线”-”连接)来表示日期和时间的字符串,请编程实现将其转换成”mm/dd/yyyy”加12小时制格式的字符串。( c2 s, o- l1 e% E0 B
    Input
    7 _! n0 e9 w" I8 x+ k& y8 K9 _9 u" }. L+ Z
    第一行为一个整数T(T<=10),代表总共需要转换的时间日期字符串的数目。
    : j3 p+ _+ U) J7 i1 ~$ W接下来的总共T行,每行都是一个需要转换的时间日期字符串。5 j$ K5 P, T& H0 {
    Output
    / {& d, U6 m5 @6 M/ e6 R: D
    # m6 j. [& d( k# O6 j. }分行输出转换之后的结果
    / L% z: K" r) {Sample Input$ p$ p* w' G" K8 y4 ]
    % l7 ?/ f9 C. ?
    2
    0 {7 B& N8 u8 h- |2009/11/07-12:12:12
    2 y% x. _1 Y0 L! |" W1970/01/01-00:01:01
    3 U9 l/ @+ P1 _, P# {) iSample Output
    ! f- c. z! V, b
    9 \5 S8 F# D+ _- K0 _0 B11/07/2009-12:12:12pm5 k& d( _  O$ r: _0 o; t
    01/01/1970-12:01:01am
    , E. g, n+ u: gHint
    2 Z! g4 k$ X! b/ [/ U! x
    & L! [0 Q7 H; {' o注意中午和凌晨时间的特殊表示
    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: 字母旋转游戏, T+ M$ ?4 L  Y0 m$ i
    Time Limit: 1000MS                Memory Limit: 65536K( e4 l3 s$ J3 N3 q# p" i
    Total Submissions: 1477                Accepted: 542/ \3 @* V# J6 j
    Description
    & B( T7 B; ~' Q7 l1 U7 |
    " I0 a# y, k0 K4 Z) W3 H给定两个整数M,N,生成一个M*N的矩阵,矩阵中元素取值为A至Z的26个字母中的一个,A在左上角,其余各数按顺时针方向旋转前进,依次递增放置,当超过26时又从A开始填充。例如,当M=5,N=8时,矩阵中的内容如下:
    1 g3 f7 J; R% R! t0 k% p   A   B   C   D   E   F   G   H
    , w' ^2 k) b. \6 F  d$ y" r- m. F4 e% `  k3 G% k7 @  d* k
       V   W   X   Y   Z   A   B   I
    - @( r! U( X- O- ]$ {- D
    , G8 d7 `( S! W) o   U   J   K   L   M   N   C   J2 _& y* y+ x* W6 x0 p+ f" n4 M
    1 u, G$ m: {* _  u. ]
       T   I   H   G   F   E   D   K" k' e4 m2 C, C& ?$ `. o

    6 t; }& e( n; F3 h$ O   S   R   Q   P   O   N   M   L5 M2 O' ~  i5 w3 l; o
    Input; n. {) \" S9 o

    : I- U; `9 i' E; V$ Q  G4 \M为行数,N为列数,其中M,N都为大于0的整数。
    ; G' d- N2 V) ~9 T$ Y& FOutput
    ! Q. ]# B' Y* U! P1 a
    8 p9 N( I, a$ y6 v$ R分行输出相应的结果8 d' i7 |* x1 f- `' S% R
    Sample Input; Q4 T3 ]: E5 I$ I* U7 Y7 r
    & W8 C2 M* N4 q# Y4 g- t- e
    4 9, Q  O1 m) h7 }
    Sample Output: ]0 l. e. S$ V. I
    , ~  ?, e0 P# I/ t: o/ o: Q
       A   B   C   D   E   F   G   H   I
    2 y* }5 q) J8 v0 Z   V   W   X   Y   Z   A   B   C   J
    7 q) A1 n, S$ e   U   J   I   H   G   F   E   D   K
    5 ?2 ^. D7 X! R2 w& f# ?( S& ~   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, 2025-10-31 21:16 , Processed in 4.306985 second(s), 83 queries .

    回顶部