[提姆(Tim)usACM][1258]程序员撞墙的题目,timusacm1258388棋牌官网首页

[TimusACM][1258]程序员撞墙的题材,timusacm1258

(本文是从我的旧博客迁移过来的)

题材地址:http://acm.timus.ru/problem.aspx?space=1&num=1258

  前日在天涯论坛见到这种在线测试的时候,有一种相见恨晚的感到,于是随便选了一道感兴趣的题(No.1258:Pool)最先做。为了规范理解题的意趣,我把题翻译成中文了,这道题的法则和台球很一般(由于原先常玩可乐8,所以对台球的题材感到亲切)。但不领会怎么出题人将台球问题说成了一个程序员撞墙的问题。下边是本身翻译后的,斯洛伐克语欠好,译错的地点请见谅。

  

问题:

 

发文单位:丹东市人民政坛

1258. Pool

运行时刻范围: 1.0 秒
内存限制: 16 MB
388棋牌官网首页 1  
在午休的时候,程序员Vasechkin喜欢在他的矩形房间里转悠。他从她干活的地点起先散步,直到他有了再起头工作的想法才截止。我们已知当Vasechkin撞墙时,他的移位规律分外符合“入射角等于反射角”定律。并且Vasechkin走的不二法门是很直的线条。凶狠的办公主管决定找出她荒废了多少日子在走走上。显著Vasechkin走过的长短除以她的平分速度(事先测量)可得出所用的年月。所以必须清楚这些长度!并且从Vasechkin的碰撞中能清楚的了然Vasechin的撞墙顺序。可能还有更简约的点子总结出程序员所浪费的光阴,可是办公室总主任认为这是缓解问题的极品方法。

文  号:市人民政坛第101号

输入

先是行由六个整数W和D组成——他们分别是Vasechkin所在屋子的宽和长(0<=W,D<=1000,单位:米)。
其次行由Vasechkin的原初地点相对于左上角的坐标组成(0<X0<W,0<y0<D)。 
其三行是终极相对于左上角的坐标(0<x1<W,0<y1<D),
最终的第四行由字母L,R,F,B组成,每个字母分别代表Vasechkin撞墙的逐条——左,右,上,下。
撞墙的次数不超越1000.
本条程序员永远不会撞在墙角,并且她的原初地点不会贴在墙上。

布告日期:1999-4-30

输出

Vasechkin从起源到巅峰所走的长短,保留小数点后四位。

推行日期:1999-4-30

例子

input output
            10 20
            9 1
            1 19
            FLRLRB
52.8015

  出题人: Pavel Egorov
题来源: 2003年八月11日斯维尔德洛夫斯克州硕士编程公开赛

==============================================================

简单易行明了就是:给长宽,起点和终点,撞边的状态,最终求的是轨道的长度。
按下图,做协助图后,可以相比较易于的遵照勾股定理求出斜边。
388棋牌官网首页 2

X0,X1,Y0,Y1,W,D那么些都是已知的,接下去就是分析碰撞顺序与这个量的涉嫌。

X方向的位移和Y方向的可以独家分析。
X方向的位移规律找出来了,Y方向的活动也是一律的。
不撞墙时:(X0-X1)^2和(X1-X0)^2是平等的,为了跟上面统一,所以把X0写在前方
388棋牌官网首页 3

再分析一下系数的法则:
388棋牌官网首页 4

原理已经相比较显然:
X0的周到规律——先往左的时候为正1,先往右的时候为负1。
X1的全面规律——碰撞次数为偶数的时候与X0周详异号,奇数时同号。
W的周到规律——R个数乘以2。

Y方向的规律也是这么。

解析到此,已经足以在程序里面方便的实现这个逻辑了。

下边是自个儿写的代码,假使依照科学格式输入,结果是天经地义的。
但不明白怎么,提交到ACM系统中报错,也不清楚不当是何等,调试不了,我曾经是豪情殆尽了。哪位情人如若运行成功了仍旧发现错误了,一定要报告我下。
有一个题材,题中要求结果保留4位小数,但自我没看出来是“四舍五入”依然“直接舍去”,但我二种都试了,都说答案有误。

下边是代码:

 1 using System;
 2 namespace ACM1258
 3 {
 4     class Program
 5     {
 6         static void Main()
 7         {
 8             System.Threading.Thread.CurrentThread.CurrentCulture = System.Globalization.CultureInfo.InvariantCulture;
 9             
10             double result;    //输出
11             double sideX, sideY;   //两个直角边
12             double X0,X1,Y0,Y1,W,D;   //各个参数
13             string flrb;    //撞墙顺序
14             int coeffX0=0,coeffX1=0,coeffY0=0,coeffY1=0,coeffW=0,coeffD=0;  //各个系数
15             bool checkLorR= true,checkForB= true;  //是否检查第一个LR、FB
16             bool LFirst= false,FFirst= false;      //判断第一个撞哪边
17             bool FBpair= true,LRpair=true;         //F与B、L与R的个数是否相等;
18 
19             string[] temp;
20             temp = Console.ReadLine().Split();               //[0]:W   [1]:D
21             W=Convert.ToDouble(temp[0]);
22             D=Convert.ToDouble(temp[1]);
23             temp = Console.ReadLine().Split();              //[0]:X0  [1]:Y0
24             X0=Convert.ToDouble(temp[0]);
25             Y0=Convert.ToDouble(temp[1]);
26             temp = Console.ReadLine().Split();               //[0]:X1  [1]:Y1
27             X1=Convert.ToDouble(temp[0]);
28             Y1=Convert.ToDouble(temp[1]);
29             flrb = Console.ReadLine();
30             
31             for (int i = 0; i < flrb.Length; i++)
32             {
33                 switch (flrb[i])
34                 {
35                     case 'F':
36                         if (checkForB)
37                         {
38                             FFirst = true;
39                             checkForB = false;
40                         }
41                         FBpair = !FBpair;
42                         break;
43                     case 'L':
44                         if (checkLorR)
45                         {
46                             LFirst = true;
47                             checkLorR = false;
48                         }
49                         LRpair = !LRpair;
50                         break;
51                     case 'R':
52                         if (checkLorR)
53                         {
54                             LFirst = false;
55                             checkLorR = false;
56                         }
57                         LRpair = !LRpair;
58                         coeffW++;
59                         break;
60                     case 'B':
61                         if (checkForB)
62                         {
63                             FFirst = false;
64                             checkForB = false;
65                         }
66                         FBpair = !FBpair;
67                         coeffD++;
68                         break;
69                     default:
70                         break;
71                 }
72             }
73 
74             coeffX0 = LFirst ? 1 : -1;
75             coeffX1 = LRpair ? -coeffX0 : coeffX0;
76             coeffY0 = FFirst ? 1 : -1;
77             coeffY1 = FBpair ? -coeffY0 : coeffY0;
78 
79             sideX = (coeffX0 * X0 + coeffX1 * X1) + coeffW * 2 * W;
80             sideY = (coeffY0 * Y0 + coeffY1 * Y1) + coeffD * 2 * D;
81             
82             result = Math.Sqrt(sideX*sideX+sideY*sideY);
83             //result = ((int)(result * 10000)) / 10000.0;   //这是直接舍去的,否则就是四舍五入
84             Console.WriteLine(result.ToString("F4"));
85         }
86     }
87 }

 

运作题中的测试用例结果:

388棋牌官网首页 5

http://www.bkjia.com/C\_jc/1164609.htmlwww.bkjia.comtruehttp://www.bkjia.com/C\_jc/1164609.htmlTechArticle\[TimusACM\]\[1258\]程序员撞墙的问题,timusacm1258
(本文是从我的旧博客迁移过来的)
问题地址:http://acm.timus.ru/problem.aspx?space=1num=1258
明日在博…

生效日期:1900-1-1

  第一章 总则

  第二章 申办与审批

  第三章 经营性球馆所管理

  第四章 经营者和顾客的权利与权利

  第五章 法律责任

  第六章 附则

  第一章 总则

  第一条
为增进体育市场的田间管理,敬爱体育市场消费者和纳税人的合法权益,促进体育经营活动的正常向上,繁荣和提高社会主义体育事业,按照《中华人民共和国体育法》等有关的法律、法规,结合我市实际情状制订本规定。

  第二条
本规定所称体育市场是指以体育服务为主题,体育经营为手段,体育活动为根本内容的特别市场。

  体育市场管理范围包括:

  1、营业性的体育健身、娱乐;

  2、营业性的体育比赛、表演;

  3、营业性的体育培训;

  4、营业性的体育技能信息;

  5、营业性的体育活动场馆;

  6、体育集资、赞助、广告、彩券及此外经营活动。

  体育经营活动中的体育项目包括:经国际体育社团认定的体育运动项目;国家体育总局特许开展,在国家体育总局的点拨和有关体育项目协会的有血有肉协会下,在全国限制内举办的体育运动项目以及有着增强体质,娱乐身心成效的中华民族、民间传统体育运动项目。

  第三条
作育和提高体育市场,应当坚持为苍生服务、为社会主义服务的矛头,坚持改进开放的国策,把社会效益放在首位,注重经济效益和社会效益的会晤。

  第四条
鼓励和支撑老百姓、法人或此外团伙从事健康有利的体育经营活动,为成功人民健身计划任务和栽培出色体育人才服务。对在体育市场首席执行官活动中做出优秀进献的单位和村办给予奖励。

  第五条
珍贵公益性体育场合和装置的全部。政府鼓励和襄助体育经营者投资体育馆所和装备的建设。未经市体育行政部门认同,公益性训练馆所和设施不得用于经营活动,任何单位和个人不得侵占、破坏公共体育场合和配备。

  第六条
市、县(市)体育行政部门是体育市场的老板部门,负责本辖区内体育经营活动的保管。

  公安、工商、城市规划、卫生、环保、物价、税务、教育等行政管理机关遵照分级职责,共同做好体育市场管理工作。

  第七条
凡在本市行政区域内参加体育市场活动的单位和个体,均须坚守本规定。

  第二章 申办与审批

  第八条 从事体育经营活动,必须具有下列条件:

  一、经营范围明确并符合体育事业发展计划和布局;

  二、经营场合符合公安、消防、卫生和环保要求;

  三、有规定数量以上的成本和必备的设备;

  四、有符合国家体育行政部门发表标准的场面和器材;

  五、有经过专业岗位培训合格的从业人士;

  六、法律、法规规定的别样条件。

  第九条 申请从事体育经营应向体育行政部门提交下列文件、证件:

  1、组建单位的申请书;

  2、总总裁部门或审批机关的特许文件;

  3、组建单位的任职文件及组建负责人的身份证复印件;

  4、经营场馆选拔验证;

  5、经营活动的关于合同协议书副本;

  6、经营活动的实施方案;

  7、体育专业技术从业人员的简历及有关表明。

  第十条
凡从事体育经营活动的,持第九条规定的文本、证件到体育行政部门填报《锦州市体育经营审批表》,申请资格核对。经理部门在吸纳申请之日起三十个工作日内对申请者资格进行查处,符合条件的授予登记,核发《体育经营执照》或《临时体育经营许可证》(以下通称《许可证》)。对于不符合条件的给予答复,并证实理由。

  申办的单位和村办领取《许可证》后,须持证到公安、工商、城市规划、环保、卫生、税务、物价、教育等部门办理特许手续。

  第十一条
经营者如变更单位名称、场面、项目、规模和性能等,须向原审批部门汇报,经原审批机关甄别批准。

  第十二条
体育经营者所得到的《许可证》只好由发证机关担负变更、转向、扣押和收回,发证机关应与有关机构公告。

  第十三条
经营射击项目,使用《中华人民共和国枪支管理法》规定的枪支弹药,应报请公安机关审查批准后,再办理《许可证》和其他步骤。

  第十四条
承办国际、国内大型营业性体育竞技、表演活动,须报市、县(市)以上体育行政部门批准。

  第十五条
营业性体育娱乐场面新建、扩建、改建时,须先行经市、县(市)以上体育行政管制机构和城市规划部门认可。

  第十六条
未经市、县(市)体育行政部门批准,任何单位和村办不得开展体育经营活动。严禁非法买卖、转让、租借、涂改《许可证》,对未得到《许可证》和关于单位认同手续的单位和个人,工商部门不予核发《营业执照》。

  第十七条
从事下列临时性体育经营活动,须经市、县(市)体育行政部门批准或经市人民政坛同意,并办理《临时体育经营许可证》:

388棋牌官网首页,  一、营业性体育表演和竞赛;

  二、营业性体育技术培训;

  三、外国、港澳台及外省市体育集团来本市开展营业性竞赛和献技;

  四、此外依法举行的暂时体育经营活动。

  第十八条
体育经营活动实践年度检验制度。经营者须按期持有关注脚到体育行政部门办理年检。

  第三章 经营性训练馆地管理

  第十九条 市、县(市)体育行政部门管理体育经营活动的职责是:

  一、宣传和贯彻举行有关体育市场管理的王法、法规;

  二、对管区内体育市场的上扬统筹规划合理布局;

  三、建立和完善体育市场管理制度;

  四、按管理权限实施对《许可证》的审批和发放,并伙同此外行政管理机关举办普通管理;

  五、监督、检查体育市场首席执行官活动,依据本规定独立查处或兼容有关机构依法查处违法行为;

  六、培训体育经营管理人士和从业人士,核发专业职务证书。

  体育行政部门设体育市场管理办公室并实施检查制度,市、县(市)体育行政管理机关个别设置体育市场执法队伍容貌,负责体育市场的平时监控和治本。

  第二十条
在体育经营活动中,严禁渲染暴力、色情、淫秽和封建迷信活动,严禁利用体育竞赛举行赌博或变相赌博。

  第二十一条
禁止非法辅导枪支弹药进入经营性体育活动场馆;禁止指引管制刀具和易燃易爆、剧毒、强腐蚀性、放射性物品及另外危险物品进入经营性体育活动场馆。

  禁止酗酒者、精神病患者进入经营性体育活动场所。

  第二十二条
营业性体育馆地不得接受未经许可开展的生产经营性体育竞技、表演、培训、咨询活动。

  第二十三条
经营性体育活动的收费项目和正式须按财政、物价部门有关规定实施,并报体育行政部门备案,明码实价。严禁地下牟利,损害消费者的便宜。

  第二十四条
体育经营活动的广告内容必须实际,符合《广告法》的确定,经市、县(市)以上体育行政部门和工商行政管
理部门复核认同后,方可公布。

  第二十五条
体育市场管理人员依法执行公务检查体育市场时,必须二人之上,并展示行政执法证件。

  第二十六条
凡取得《许可证》等证照的单位和民用,必须依法经营,自觉接受体育行政部门及任何有关管理机构的反省督查和管制。

  第二十七条
体育市场各有关管理机构对三菱的报案要及时处理,并为举报人保密。

  对报案、揭发体育经营活动中违纪犯罪行为的功勋人士,政党有关单位应给予表彰或奖励。

  第四章 经营者和消费者的权利与权利

  第二十八条
凡依法拿到经营资格,开展正当经营活动的经营者,其合法权益受法律保障,任何单位和个人不得侵犯。

  第二十九条 经营者在审验登记的范围内有所自主经营权。

  经营者调整、变更、终止经营项目,必须超前十五日到原审批机关办理审批手续。

  第三十条
除法律、法规规定外,经营者有权拒绝任何机关和单位随意收取资费、无偿占用或应用经营场馆和劳务。

  第三十一条 经营者有保安经营场地秩序,制止打架斗殴。
起哄闹事或其他有悖社会公德的作为和掩护从业人士人格尊严不被侵蚀,营业场馆设施不被弄坏的权利和无偿。

  第三十二条
经营者有权拒绝无体育市场执法资格人员的检查。对执法人士正常执行公务,经营者应积极配合,提供关于证照、资料,如实反映状况,不得截留和拒绝。

  第三十三条
经营者要爱护体育经营活动场地的秩序,建立健全各个管理制度和治安防火等协会,保证体育经营活动场面安全、卫生,制止环境污染。

  经营性活动场面的总人口不足超越规定人数。

  凡不适于未成年人参预的序列,不得准其加入。

  第三十四条 经营者应该依法缴纳税费(管理费收费项目,
标准由财政、物价部门另行规定)。

  第三十五条
经营者不得聘用未取得市以上体育行政部门专业岗位培训合格证书的人士担任体育经营活动的教练、相应等级裁判、技术培训咨询指(辅)导员和应急救治等工作。各体育项目的专业岗位培训及发证工作由市体育行政部门另行规定。

  第三十六条
经营者应对本单位从业人士加强思想政治教育、法制教育、科学文化教育和业务培训,以增进从业人员的素质和服务水平。

  第三十七条
体育市场顾客的合法权益受法律维护。因经营者的毛病损害消费者合法权益的,经营者应积极担当赔偿责任。消费者的合法权益受到侵害爆发争议的,可向有关单位申诉或依法向人民法院起诉。

  第五章 法律责任

  第三十八条
对违反规定的行为,体育行政部门或有关行政管制部门按各自的任务权限,遵照国家有关法律、法规,视情节轻重予以处分。

  第三十九条
违反本规定,在体育市场经营活动中,有下列行为之一者,体育行政部门将视情节轻重,分别给予警示、罚款、没收违纪所得、责令停业整改或暂扣、吊销《许可证》的处罚。以上处分也可并处,罚款额在
200元之上3000元以下。

  一、未经体育行政部门批准,擅自从事体育市场首席营业官活动或未按规定办理有关手续的;

  二、擅自改变经营项目、范围、场面的;

  三、买卖、转让、租借、涂改《许可证》的;

  四、场馆、器材不符合国家体育行政部门公布的正式的;

  五、未按规定时限办理年检的;

  六、采纳无批准手续的经营者采纳训练场馆开展体育经营活动的;

  七、弄虚作假,欺骗体育消费者的;

  八、未经市、县(市)以上体育行政部门批准,承办国际、国内大型营业性体育比赛的;

  九、聘用未拿到专业岗位培训合格证书的人手从事体育项目标操练、技术培训、应急救护等工作,体育行政部门已责令立异,逾期不改的;

  十、未经批大校公益性体育活动场地和装置用于经营活动的;

  十一、不履行平安爱惜措施,存在严重事故隐患,已按期整改,逾期不改的;

  十二、允许未成年人出席不宜其参与项目标;

  十三、未按规定缴纳体育市场管理费的。

  第四十条
违反本规定,阻挠、抗拒、伤害体育市场执法职员依法执行公务的,按《中华人民共和国治安管理处罚条例》予以处罚,触犯刑律的,依法追究刑事责任。

  第四十一条
当事人对行政处罚不服的,可以依法申请复议,或者向人民法院提起诉讼。逾期不提请复议、不起诉、又不执行处罚决定的,做出处分决定的自发性可报名法院强制执行。

  第四十二条
体育市场执法人士滥用职权、玩忽职守、徇私枉法的,由其首席营业官部门按有关规定给于行政处分。情节严重,构成犯罪的,提请司法活动依法追究刑事责任。

  第六章 附则

  第四十三条 本规定实施中的具体问题由市体育行政管理机关担负解释。

  第四十四条 本规定自揭橥之日起举行。

  附:

体育运动项目名称

  射箭、田径、羽毛球、棒球、篮球、拳击、皮划艇、自行车(含山地车)、马术、击剑、足球、体操(含艺术体操)、手球、曲棍球、柔道、现代五项、赛艇、射击、游泳(含跳水、花样游泳、水球)、垒球、乒乓球、网球(含软式网球)、排球(含沙滩排球)、举重、摔跤、帆船(含帆板)、速度滑冰、短道速度滑冰、花样滑冰、冰球、高山滑雪、越野滑雪、跳台滑雪、北欧两项、自由式滑雪、冬天两项、雪车、雪橇、冰壶、保龄球、地掷球、高尔夫球、台球、藤球、国际象棋、中国象棋、围棋、桥牌、航海模型、航空模型、跳伞、重力伞、滑翔伞、滑翔、悬挂滑翔、热气球、登山、攀岩、汽车、车辆模型、摩托车、摩托艇、滑水、蹼泳、无线电、中国式摔跤、武术、技巧、铁人三项、跆拳道、弓弩、轮滑、滑板、钓鱼、信鸽、舞狮子、舞狮、龙舟、风筝、门球、毽球、气功、健美、健美操、体育舞蹈

  注:

    1、新增体育运动项目或现有项目的调整、变化,国家体育总局将顿时披露;

  2、部分体育运动项目包含若干小项,具体品种以各全国性体育运动项目社团发布的为准;

  3、具有较强的地点性特点的体育运动项目,由地点体育部门规定。