今天尽力了考了110,还算好吧,能拿的分都拿了。

T1

第一题是一道状压dp,可能是我状态没定好, 我的转移的复杂度有O(2n×n2×k),明天去看看别人的状态怎么定的。其实发现离正解没差多少,只要记一个后缀就好了,学习了一个新的函数__builtin_ctz(x)数二进制后缀0的个数.clz相反.

T2

第二题没什么思路,打了个暴力。第二题就是个分治,问题是求∑i=1n∑j=inMax(i,j)∗Min(i,j)考虑分治,然后发现只需要统计l,r跨越mid的贡献,用两个指针扫,然后维护答案即可。

#include<iostream>
#include<cstdio>
#include<cstring>
#include<cstdlib>
#include<cmath>
#include<algorithm>using namespace std;typedef long long LL;
#define REP(i, a, b) for(register LL i = (a), i##_end_ = (b); i <= i##_end_; ++ i)
#define DREP(i, a, b) for(register LL i = (a), i##_end_ = (b); i >= i##_end_; -- i)
#define mem(a, b) memset((a), b, sizeof(a))LL read()
{register LL fg = 1,sum = 0;char c = getchar();while(!isdigit(c)) { if(c == '-')fg = -1; c = getchar(); }while(isdigit(c)) { sum = sum * 10 + c - '0'; c = getchar();    }return fg * sum;
}
template<typename T> inline bool chkmin(T &a, const T &b) { return a > b ? a = b, 1 : 0; }
template<typename T> inline bool chkmax(T &a, const T &b) { return a < b ? a = b, 1 : 0; }const int maxn = 500000+10;
const LL mod = 1e9 + 7;
const LL INF = 1e14;
LL n;
LL a[maxn];
LL smx[maxn],smn[maxn],sm[maxn];
LL ans;#define fl(a,n) fill(a+1,a+1+n,0);
void work(LL l,LL r)
{if(l == r){(ans += (a[l] * a[l]) % mod) %= mod;return;}LL mid = (l + r) >> 1;work(l,mid); work(mid+1,r);LL x = -1e14,y = 1e14;REP(i,mid+1,r){x = max(x,a[i]);y = min(y,a[i]);smx[i] = (smx[i-1] + x)%mod;smn[i] = (smn[i-1] + y)%mod;sm[i] = (sm[i-1] + (x * y)%mod)%mod;}LL j = mid + 1,k = mid+1;x = -1e14, y = 1e14;DREP(i,mid,l){x = max(x, a[i]); y = min(y, a[i]);for(; j <= r && a[j] <= x; ++j);for(; k <= r && a[k] >= y; ++k);LL L = min(j, k), R = max(j, k);(ans += ((x * y) % mod * (L - mid - 1)) % mod) %= mod;(ans += (sm[r] - sm[R - 1] + mod) % mod) %= mod;if(j <= k) (ans += (y * (smx[R - 1] - smx[L - 1])) % mod) %= mod;else (ans += (x * (smn[R - 1] - smn[L - 1])) % mod) %= mod;}
}int main()
{
#ifndef ONLINE_JUDGEfreopen("seq.in","r",stdin);freopen("seq.out","w",stdout);
#endifn = read();REP(i,1,n) a[i] = read();work(1, n);printf("%lld\n", (ans + mod) % mod);return 0;
}

T3

同样暴力.60pt其实不难想,根据期望的一些线性,我们可以把期望分开来算,算这个位置的期望的位置,然后暴力统计就好了.

经验与不足

该拿的分都拿到,不能拿的尽量骗,先看题,打暴力,节奏要稳,不能因为题目难度乱了节奏,跟着今天这种节奏就很好的。

转载于:https://www.cnblogs.com/brodrinkwater/p/7527964.html

9-11NOIP模拟赛总结相关推荐

  1. NOI.AC NOIP模拟赛 第六场 游记

    NOI.AC NOIP模拟赛 第六场 游记 queen 题目大意: 在一个\(n\times n(n\le10^5)\)的棋盘上,放有\(m(m\le10^5)\)个皇后,其中每一个皇后都可以向上.下 ...

  2. 2017.6.11 校内模拟赛

    题面及数据及std(有本人的也有原来的) :2017.6.11 校内模拟赛 T1 自己在纸上模拟一下后就会发现 可以用栈来搞一搞事情 受了上次zsq 讲的双栈排序的启发.. 具体就是将原盘子大小cop ...

  3. 2020年蓝桥杯模拟赛2020.3.25直播笔记

    2020年蓝桥杯模拟赛解题报告(CPP版本) 第八题 长草的bfs写法[我想暴力模拟O kmn] 深搜会爆 bfs像投到水里的涟漪 问题: const int dx[] = {1, 0, -1, 0} ...

  4. 2021年 第12届 蓝桥杯 第4次模拟赛真题详解及小结【Java版】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...

  5. 2021年 第12届 蓝桥杯 第3次模拟赛真题详解及小结【Java版】

    蓝桥杯 Java B组 省赛决赛 真题详解及小结汇总[2013年(第4届)~2021年(第12届)] 第11届 蓝桥杯-第1.2次模拟(软件类)真题-(2020年3月.4月)-官方讲解视频 说明:大部 ...

  6. 蓝桥杯 Java B组 省赛决赛模拟赛 详解及小结汇总+题目下载【2013年(第4届)~2021年(第12届)】

    蓝桥杯 Java B组 省赛决赛模拟赛 详解及小结汇总+题目下载[2013年(第4届)~2021年(第12届)] 百度网盘-CSDN蓝桥杯资料(真题PDF+其它资料)   提取码:6666 2013年 ...

  7. 2020年 第11届 蓝桥杯 第2次模拟赛真题详解及小结【Java版】

    蓝桥杯 Java B组 省赛真题详解及小结汇总[2013年(第4届)~2020年(第11届)] 注意:部分代码及程序 源自 蓝桥杯 官网视频(历年真题解析) 郑未老师. 2013年 第04届 蓝桥杯 ...

  8. 10.30 NFLS-NOIP模拟赛 解题报告

    总结:今天去了NOIP模拟赛,其实是几道USACO的经典的题目,第一题和最后一题都有思路,第二题是我一开始写了个spfa,写了一半中途发现应该是矩阵乘法,然后没做完,然后就没有然后了!第二题的暴力都没 ...

  9. 模拟赛-20190114-新魔法(distance)

    前言 第一篇模拟赛题思路总结 题目相关 题目链接 题目大意 给定一个长度为nnn序列,每一个位置iii都有一种颜色aia_iai​ 现在有mmm次操作,操作分两种: 第一种操作,将所有颜色xxx都替换 ...

  10. 3.27模拟赛 sutoringu(后缀数组)

    \(\color{white}{mjt是机房模拟赛独自切过题的唯一的人...}\) (应本人要求删掉惹) \(Description\) 给你\(n,k\)和长为\(n\)的字符串\(s\).一个区间 ...

最新文章

  1. 域名转发与域名解析有什么区别?
  2. 技巧速看!如何帮助“表哥”快速玩转报告美化?
  3. 【Java报错】GP数据库 function point(unknown) is not unique.Could not choose a best candidate function 问题解决
  4. R3Injector实例里的records map的填充逻辑
  5. dotnet 使用 Infer# 自动分析代码缺陷
  6. python面试设计模式问题_聊聊 Python 面试最常被问到的几种设计模式(下)
  7. python 获取点击按钮名称_python如何获取tkinter组件的名称?比如按下多个Button中的一个,返回这个被按下的Button的text?...
  8. Longest Valid Parentheses leetcode java
  9. 天气太热业绩差,除了设坛求雨外,数据分析师还能干啥?
  10. word文字铺满页面_word文字怎么铺满
  11. Android跑马灯进度条,table数据跑马灯效果
  12. js简单插件(饼形图)
  13. uni-app H5中使用wx-open-launch-weapp打开微信小程序
  14. 预言机理解:A Scalable Architecture for On-Demand, Untrusted Delivery of Entropy
  15. AI+工业互联网:百度AI专利讲述“中国智造”
  16. 超级账本学习之三:创建超级账本网络
  17. 使用virt-install创建虚拟机
  18. Error LNK2005:_main already defined in test.obj
  19. 建站百科|手把手教你如何申请网站空间
  20. RMAN backup

热门文章

  1. 力扣题目——107. 二叉树的层序遍历 II
  2. mysql xa测试方案_mysql xa导致的事务一直running问题
  3. 【Python-3.5】绘制世界人口地图
  4. springboot之全局处理异常封装
  5. 解决bootstrap dropdown 下拉菜单有时候不能显示的问题
  6. 安装vim提示Depends: libpython3.5 (>= 3.5.0~b1) but it is not going to be installed的解决方法
  7. Windows10 解决“装了 .NET Framework 4.5.2/4.6.1/4.7.1等等任何版本 或版本更高的更新”问题
  8. 测量在Python中经过的时间
  9. 如何使用JavaScript检查URL中的#哈希?
  10. 远程控制slam小车及pid调试PC与树莓派ssh链接时出现间歇性联通段开网络故障acailable I Destination Host Unreachable_然后5s后切换了一个地图