SRM 11爆0记

难度区间:NOIP提高-

第一题

题意:

滚来滚去

Solution

刚开始写了O(n)的60分模拟,打了1h的状态表,结果写砸了只剩35分QAQ

对于30%的数据:O(n^2)模拟

对于60%的数据:O(1)求横向翻转,O(n)模拟向下翻转的情况

对于100%的数据:时间复杂度:O(1)

分类讨论:

用真.骰子模拟可得:

当c%4=0时,ans=r*c/2*7;

当c%4=1时,循环节为(第1-4行):即:1,5,6,2,易得ans=c/4*14*r+循环节sum=(c>>1)*7*r+循环节sum

当c%4=2时,循环节为(第1-6行):      ,同理易得ans

当c%4=3时,循环节为(第1-2行):,同理易得ans

Code:

 1 #include <iostream>
 2 #include <cstdio>
 3 #define ll long long
 4 using namespace std;
 5 ll r,c,yu2[10],yu1[10];// 1:r 0:l
 6 void read(ll &k)
 7 {
 8     ll f=1;k=0;char c=getchar();
 9     while (c<‘0‘||c>‘9‘)c==‘-‘&&(f=-1),c=getchar();
10     while (c>=‘0‘&&c<=‘9‘)k=k*10+c-‘0‘,c=getchar();
11     k*=f;
12 }
13 int main()
14 {
15     freopen("dice.in","r",stdin);
16     freopen("dice.out","w",stdout);
17     read(r);read(c);
18     yu2[1]=5;yu2[2]=11;yu2[3]=19;yu2[4]=28;yu2[5]=36;yu2[0]=0;
19     yu1[1]=1;yu1[2]=6;yu1[3]=12;yu1[0]=0;
20     ll chu=c/4,yu=c%4;
21     if (yu==3)printf("%lld\n",chu*14*r+11*r);
22     if (yu==2)printf("%lld\n",chu*14*r+42*((ll)r/6)+yu2[r%6]);
23     if (yu==1)printf("%lld\n",chu*14*r+14*((ll)r/4)+yu1[r%4]);
24     if (!(c%4))printf("%lld\n",r*(c>>1)*7);
25 }

时间: 2024-10-05 06:43:54

SRM 11爆0记的相关文章

CTSC2016&amp;&amp;APIO2016爆零记

CTSC2016&&APIO2016爆零记 前言:人生第一次写(骗)爆(访)零(问)记(量),心里还是有点小激动呢.不过由于本文作者语文水平低下,如果发现用词不当或只会记流水账,请谅解. CTSC Day0: CCF大发慈悲让我们入住了5星级酒店昆(百)泰酒店. 不过也有一点不兹磁的地方,就是酒店离学校大概要步行半个小时,对于我这种懒人大概是天大的灾难吧(雾).于是这次比赛就强行变成了CTSC&&APIO远足营. 第一次看见70块钱一瓶零下八度不结冰的矿泉水,然而家穷喝不起

长沙集训day4(总结)(爆零记)

长沙爆零记QAQ话不多说直接进入正题: t1:淘淘的苹果(一看t2导弹拦截????t3校门外的树???哎呦哇擦,再一看题目,哦........我想多了) 第一题呢:陶陶==淘淘要去摘苹果,他的手不能弯((一脸懵逼)一看数据手贼长....)因为有的苹果太高 所以他要去拿凳子,但他太懒只想那m个凳子(你说这人想吃苹果还怕懒可怕可怕.....),所以说让你选出m个凳子 可以使他拿到最多的苹果. 思路:当时想的是区间DP,想了想,直接用结构体a[i].l和a[i].r存凳子的区间加上他的手的高度0.0

Codeforces Round #423 (Div. 2, rated, based on VK Cup Finals)爆零记

昨晚一个瓜皮说今晚有cf,听说是晚间场,我瞅了一眼,娃,VK Cup,上分的好机会,看着比赛时间就有点心酸了,0:35,当时一直在纠结要不要打的问题,当时想着应该不难吧,要不打一下吧,要不还是看看题先,如果容易就打,难的话就不打了好的吧!于是就这样愉快的决定了.......cf日常延时10分钟,0:45,要不要去睡觉啊,干脆先睡一觉好了,然后又是忍不住诱惑在等待开始! 比赛一开始,瞅了一眼A,这不是一道水题嘛,直接敲啊,然后1分钟就搞定了,交了就过了,B题直接求边界点就好了,扫了一遍就过了,C题

为11.2.0.2 Grid Infrastructure添加节点

转自:http://www.askmaclean.com/archives/add-node-to-11-2-0-2-grid-infrastructure.html 在之前的文章中我介绍了为10g RAC Cluster添加节点的具体步骤.在11gr2中Oracle CRS升级为Grid Infrastructure,通过GI我们可以更方便地控制CRS资源如:VIP.ASM等等,这也导致了在为11.2中的GI添加节点时,同10gr2相比有着较大的差异. 这里我们要简述在11.2中为GI ADD

Oracle 11g RAC自动打GI PSU补丁(11.2.0.4.8)

一.准备工作 1,数据库环境 操作系统版本   : Redhat 6.5 x64   数据库版本     : Oracle 11.2.0.4 x64 RAC    Grid           : 11.2.0.4     Oracle database: 11.2.0.4 本文出自:http://koumm.blog.51cto.com/ 2,准备内容 GI PSU : p21523375_112040_Linux-x86-64.zip    OPatch : p6880880_112000_

探索Oracle之数据库升级二 11.2.0.3升级到11.2.0.4完整步骤

探索Oracle之数据库升级二  11.2.0.3升级到11.2.0.4完整步骤 说明:         这篇文章主要是记录下单实例环境下Oracle 11.2.0.1升级到11.2.0.3的过程,当然RAC的升级是会有所不同.但是他们每个版本之间升级步骤都是差不多的,先升级Database Software,再升级Oracle Instance. Oracle 11.2.0.4的Patchset No:19852360下载需要有Oracle Support才可以.  Patchset包含有7个

Oracle Rac 11.2.0.3迁移OCR和VOTEDISK

环境:AIX7.1+Oracle Rac 11.2.0.3 迁移描述:今天在装Oracle Rac的时候,错误的将500G的数据盘用作OCRDG了,遂后续比较麻烦,只能讲ocr和votedisk迁移到新建的OCRDG上,并把DATADG删除并格式化该盘.(OCRDG为normal 冗余) 操作如下: [email protected]:/home/grid>/oraapp/grid/gridhome/bin/ocrcheck Status of Oracle Cluster Registry i

Oracle 10.2.0.5 RMAN迁移并升级11.2.0.4一例

一.环境介绍 1. 源数据库环境 操作系统版本: OEL 5.4 x64数据库版本  : 10.2.0.5 x64数据库sid名 : orcl Oracle 10g 10.2.0.5(64bit)安装目录如下: 数据库软件:/u01/app/oracle/product/10.2.0/db_1数据库文件:/u01/app/oracle/oradata/orcl 归档目录:/u01/archivelog RMAN目录:/backup/dbbak/orabak 背景:一个老oracle10g数据库,

11G RAC 11.2.0.1.0实例evict故障处理

Aix 7.1 参考文档: https://blogs.oracle.com/database4cn/rac Resolving ORA-481 and "terminating the instance due to error 481" (Doc ID 1950963.1) ORA-00481 After "The instance eviction reason is 0x2" due to Lack of Ticket (Doc ID 1644015.1)