最近挺久没写比赛类的blog了

  链接:http://211.140.156.254:2333/contest/59

  这次的题目主要考验的是爆搜+打表的能力

  其实如果你上来就把所有题目都看过一次就可以知道:正确的顺序是3->1->2

  先切T3的意思是你可以很快的爆搜之后开始打表,但T2考思维,T1考语文,这就导致大量的出现前两题A了但最后一题打表时间不够了的情况。

  虽然我T2才打表弄了20,但凭借的最后一题的42分表(还忘记把大样例的的两个抄进去了),还是涨了rating。

  

  祝贺CJJ涨了1百多分

  T1 重点是理解题意,一定要当一个人跑到最前面的时候下一个人才开始跑。

  然后就是一顿乱推了,先把阶乘去掉再n^2枚举,得到u*n/(c[i]-d[i]*(j-1)-v)/n(i=1-n;j=1-n)

  然后可以发现两个n可以消去:u/(c[i]-d[i]*(j-1)-v)(i=1-n;j=1-n)

  CODE

#include<cstdio>
using namespace std;
typedef double DB;
const int N=;
int n,i,j;
DB v,u,c[N],d[N],ans;
int main()
{
scanf("%d%lf%lf",&n,&v,&u);
for (i=;i<=n;++i)
scanf("%lf",&c[i]);
for (i=;i<=n;++i)
scanf("%lf",&d[i]);
for (i=;i<=n;++i)
for (j=;j<=n;++j)
ans+=u/(c[i]-d[i]*(j-)-v);
printf("%.3lf",ans);
return ;
}

  T2 朴素的全排列验证为O((n^2)!),显然会飞妈(但可以打表出1-4)

  仔细观察,因为它们都是01串,就很容易让人想到二进制。

  因此所有的串都可以压缩成0-2^n-1之间的数

  我们可以用vis[]数组表示这个串(压成数之后)是否被使用,可以发现:

  比如一个串010,二进制下记为2,能接在它后面的串为100或101,对应二进制下的4或5

  稍微想一下就知道一个串压成数(x)后可以接在它后面的数为x<<1或x<<1|1

  也很好理解,整体左移一位后最后一位可能是1或0,就两种情况。

  因此我们可以先选0,然后往后找(优先拿1),因为一定有解,因此可以保证正确性。

  CODE

#include<cstdio>
using namespace std;
const long long N=(<<)+;
bool vis[N];
long long n,len,i,k;
int main()
{
scanf("%d",&n); len=<<n; vis[]=;
for (i=;i<=n;++i)
putchar('');
for (i=n+;i<=len;++i)
{
k=(k<<)%len;
if (!vis[k+]) vis[++k]=,putchar(''); else vis[k]=,putchar('');
}
return ;
}

  T3 难度有一些,没有dalao现场切掉,yu‘ben’ao打表拿了58分(真恐怖)

  看一下Manchery的正解

首先要知道约数个数的公式

然后这个题就是把 n!n! 分解质因数 然后把每个质因数的指数分配给A,BA,B,使得他们的指数+1的积相等

这个正如LJN想的一样是可以折半的,但是他跑了20分钟,std却只要400ms,说明这个搜索是很细致的

关键就在于折半的时候怎么分两半

比如现在有 kk 个质因子 ∏kpaii∏kpiai

那么比较直观的是直接枚举在哪mm分开,使得 max{∏m1ai+1,∏km+1ai+1}max{∏1mai+1,∏m+1kai+1} 最小

但这还不是最优的,因为这些质因子最后一段必然都是只出现一次的,这些只会对乘积相等造成×2×2的影响,我们可以在折半之后枚举他

假设有rr个指数是11,那么我们要找的是 max{(∏m1ai+1)×r,∏k−rm+1ai+1}max{(∏1mai+1)×r,∏m+1k−rai+1} 最小

具体可参见std

  是不是很diao,但是我们可以打表:

#include<cstdio>
using namespace std;
long long ans[]={,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,};
int main()
{
int n;
scanf("%d",&n);
if (n==) { printf("%lld",); return ; }
if (n==) { printf("%lld",); return ; }
printf("%lld",ans[n]);
}

EZ 2018 03 09 NOIP2018 模拟赛(三)的更多相关文章

  1. EZ 2018 03 30 NOIP2018 模拟赛(六)

    链接:http://211.140.156.254:2333/contest/67 转眼间上次加回来的Rating又掉完了. 这次不知为何特别水,T1想了一段时间没想出来弃了,导致后面心态炸了. T2 ...

  2. EZ 2018 03 23 NOIP2018 模拟赛(五)

    链接:http://211.140.156.254:2333/contest/65 这次Rating重回Rank18,我是20的守门员(滑稽) 这次题目和数据普遍偏水,我T2打错了一个变量名竟然过了所 ...

  3. EZ 2018 03 16 NOIP2018 模拟赛(四)

    链接:http://211.140.156.254:2333/contest/64 我去掉了一百多分! 这次的题目怎么说呢,特别水,但是就是出现了一些很逗的错误导致炸裂. 最好笑的是SB的不只我一个: ...

  4. EZ 2018 06 17 NOIP2018 模拟赛(十九)

    这次的题目难得的水,但是由于许多哲学的原因,第二题题意表述很迷. 然后是真的猜题意了搞了. 不过这样都可以涨Rating我也是服了. Upt:链接莫名又消失了 A. 「NOIP2017模拟赛11.03 ...

  5. EZ 2018 06 10 NOIP2018 模拟赛(十八)

    好久没写blog&&比赛题解了,最近补一下 这次还是很狗的,T3想了很久最后竟然连并查集都忘写了,然后T2map莫名爆炸. Rating爆减......链接不解释 好了我们开始看题. ...

  6. EZ 2018 05 04 NOIP2018 模拟赛(十二)

    这次的试卷应该是激励我们一下的,链接 然后大家的分数就都很高,然后我就210被一群秒A T2的240大佬爆踩 掉了5rating但Rank竟然发杀了 X_o_r dalao && YZ ...

  7. EZ 2018 06 24 NOIP2018 模拟赛(二十)

    很久之前写的一套题了,由于今天的时间太多了,所以记起来就写掉算了. 这一场尽管T2写炸了,但也莫名Rank4涨了Rating.不过还是自己太菜. A. 环游世界 首先我们先排个序,想一下如果不用走回来 ...

  8. EZ 2018 06 02 NOIP2018 模拟赛(十七)

    这次的比赛是真心比较狗,我TM的写了30min的树剖ZZ地直接memset超时了 话说我既然想到差分就应该去写差分的啊! 好了不过这次Rank还挺高的,终于要打进前10了当然是假的了. 好了下面开始讲 ...

  9. EZ 2018 05 26 NOIP2018 模拟赛(十六)

    这次难道就是传说中的标准分大赛?而且这次比赛的链接不翼而飞了 一堆人153pts然后就有Rank4?看来这个Rank4不值钱了,才涨了50+的Rating. 不过还好最后5min的时候想出了T1正解, ...

随机推荐

  1. 学习git踩坑之路

    第一次使用git: 1.使用CentOS Linux release 7.3.1611 (Core),内核版本3.10.0-514.el7.x86_64 2.安装git: root权限运行:yum   ...

  2. Webpack打包报"JavaScript heap out of memory"错误

    问题 开发项目有一段时间了,随着项目越来越大,打包的时间也相应的变长了,打包时的内存也增多了.这时候产生了一个问题,在发布项目的时候,会出现JavaScript heap out of memory错 ...

  3. Gson解析复杂JSON字符串的两种方式

    JSON解析可以使用的库: JSONObject(源自Android官方). Gson(源自Google). Jackson(第三方开源库). FastJSON(第三方开源库). 本文例子使用Goog ...

  4. linux 下获取文件最后几行

    在Linux下,获取文件倒数几行的命令是: tail -n 10 your_filename     #获取倒数10行

  5. SQL server权限管理和备份实例

    权限设置: 1.创建用户zhangsan,并赋予zhangsan有dbcreator的服务器权限. 2.使用zhangsan登录,测试能否创建数据库. 3.使用sa用户附加myschool数据库,设置 ...

  6. 人工智能——Singleton模式

    上次在状态模式中的设计有一个严重的问题,就是如下: voidCTroll::ChageState(CState* pNewState) {        deletem_pCurrentState; ...

  7. JSR规范

    JSR是JavaSpecification Requests的缩写,意思是Java 规范提案.是指向JCP(Java Community Process)提出新增一个标准化技术规范的正式请求.任何人都 ...

  8. XtraEditors四、TextEdit、ButtonEdit、PictureEdit、RadioGroup、PopupContainerEdit

    TextEdit控件 以文本框的形式绑定各种形式的选择框: 文本框设置 输入 密码 字符 时, 要有 * 号掩盖输入的字符, 代码如下: textEdit1.Properties.PasswordCh ...

  9. 张高兴的 .NET Core IoT 入门指南:(一)环境配置、Blink、部署

    如何在 Raspberry Pi 的 Raspbian 上构建使用 GPIO 引脚的 IoT 程序?你可能会回答使用 C++ 或 Python 去访问 Raspberry Pi 的引脚.现在,C# 程 ...

  10. 以太坊预言机与WEB API(原创,转载请说明原址)

    什么是预言机? 从链外获得数据,提供区块链与现实世界事件之间的连接,提供外部信息的平台 预言机自身也是一种智能合约,它允许区块链连接到任何现有的API 是这个预言机去调用各种 WEB API的接口 这 ...