我就是不行。

ZJ:

好像是因为郁闷了才咕掉的……

33
Miemeng 30

00:01:34
40

00:01:46
0

00:01:22
70

00:01:46

不记得当时怎么想的

T1只会暴力。

T2也是暴力。

T3连暴力都写错……

Tj解:

存个代码吧……

T1:

#include <iostream>
#include <cstring>
#include <cstdio>
#define N 5555555
#define LL long long using namespace std; int pn;
int arr[N];
int maxv,maxxv;
LL mxt,mxxt;
LL ans=0;
struct Myqueue{
int A[2*N],f,b;
void clear(){f=b=0;}
void push(const int k){A[b++]=k;}
void pop_front(){f++;}
void pop_back(){b--;}
int& front(){return A[f];}
int& back(){return A[b-1];}
bool empty(){return f==b;}
int size(){return b-f;}
}q,id,sam;
int main(){
#ifndef LOCAL
freopen("jolyne.in" ,"r",stdin);
freopen("jolyne.out","w",stdout);
#endif
cin.sync_with_stdio(false);
cin>>pn;
for(int i=1;i<=pn;i++){
cin>>arr[i];
if(arr[i]>maxv){
maxxv = maxv;
maxv = arr[i];
}
else if(arr[i]!=maxv && arr[i]>maxxv){
maxxv = arr[i];
}
}
// cout<<maxv<<" "<<maxxv<<endl;
for(int i=1;i<=pn;i++){
if(maxv == arr[i]) mxt ++;
if(maxxv == arr[i]) mxxt++;
}
// cout<<mxt<<" "<<mxxt<<endl;
for(int i=1;i<=pn;i++){
while(!q.empty() && arr[i] > q.back()){
q.pop_back();
id.pop_back();
sam.pop_back();
}
if(!q.empty() && q.back()==arr[i])
sam.push(sam.back()+1);
else sam.push(1);
id.push(i);
q .push(arr[i]);
}
for(int i=1;i<=pn;i++){
int is_s=0;
while(!q.empty() && id.front()<=i){
is_s=arr[i]==q.front();
q.pop_front();
id.pop_front();
sam.pop_front();
}
while(!q.empty() && q.back() < arr[i]){
q.pop_back();
id.pop_back();
sam.pop_back();
ans++;
}
if(!q.empty() && q.back() == arr[i])
sam.push(sam.back()+1);
else sam.push(1);
id.push(pn+i);
q.push(arr[i]);
if(q.size()==1 || q.front() != q.back())
is_s=0;
int va=sam.back();
sam.pop_back();
sam.push(va-is_s);
ans+=sam.back()-1;
if(q.front() != arr[i]){
ans++;
}
}
if(mxt==1)ans-=mxxt;
else ans-=mxt*(mxt-1)/2;
cout<<ans<<endl;
}

T2:

简单线性dp,作为dpsb又跪了=。=

#include <iostream>
#include <cstring>
#include <cstdio>
#define N 1111111
#define LL long long using namespace std; const int Mod=1e9+7;
int sl;
int arr[N];
LL dp[N],sum[N]; int main(){
#ifndef LOCAL
freopen("rideon.in" ,"r",stdin);
freopen("rideon.out","w",stdout);
#endif
cin.sync_with_stdio(false);
cin>>sl;
for(int i=1;i<=sl;i++)
cin>>arr[i];
for(int i=1;i<=sl;i++){
dp[i] =(sum[i-1]%Mod-sum[arr[i]-1]%Mod+Mod+2)%Mod;
sum[i]=(sum[i-1]+dp[i])%Mod;
}
cout<<sum[sl]<<endl;
}

19-11-05-Night的更多相关文章

  1. Update 19.11 for Azure Sphere

    今天,微软发布了面向Azure Sphere的19.11更新,其主要亮点就是加入了对开发工具Visual Studio Code和Linux开发环境的支持.具体来讲,本次更新包含3个部分: 1. Az ...

  2. 2021.11.05 eleveni的水省选题的记录

    2021.11.05 eleveni的水省选题的记录 因为eleveni比较菜,但是eleveni不想写绿题(总不能说是被绿题虐得不想写),eleveni决定继续水noip原题. --实际上菜菜的el ...

  3. 《剑指offer》数学题及其它 (牛客11.05)

    比较多的思维题,涉及位运算.快速幂.二进制.约瑟夫问题.队列.贪心.dp等等. 难度 题目 知识点 ☆ 12.数值的整数次方 细节,快速幂 ☆☆ 47.求1+2+3+···+n 思维发散 ☆☆ 48. ...

  4. Fibonacci Again 分类: HDU 2015-06-26 11:05 13人阅读 评论(0) 收藏

    Fibonacci Again Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Tot ...

  5. Visual Assist X 10.8.2052的Crack破解补丁. 2014.11.05 (General release.)

    VA小组立即更新频率似有些放缓几乎,版本号都是2个月才更新一次,而这次的更新幅度也还是比較大的,新增了6个特性,而且修正和20余处大大小小的问题,而且也是正式发行版,推荐更新. 对于破解补丁还是老规矩 ...

  6. [ASE][Daily Scrum]11.05

    在昨天的课程之后经过讨论进行了初步的分工,并制定出了我们的一个两周计划. 尚没有和老师讨论,已经询问了时间没有收到回复,等老师那边讨论过后我会在更新这个部分. 第一阶段的目标是用户能够在一个空白的地图 ...

  7. HDU6029 Happy Necklace 2017-05-07 19:11 45人阅读 评论(0) 收藏

    Happy Necklace                                                                           Time Limit: ...

  8. [软件工程基础]2017.11.05 第九次 Scrum 会议

    具体事项 项目交接燃尽图 每人工作内容 成员 已完成的工作 计划完成的工作 工作中遇到的困难 游心 #10 搭建可用的开发测试环境:#9 阅读分析 PhyLab 后端代码与文档:#8 掌握 Larav ...

  9. hdu 1053 (huffman coding, greedy algorithm, std::partition, std::priority_queue ) 分类: hdoj 2015-06-18 19:11 22人阅读 评论(0) 收藏

    huffman coding, greedy algorithm. std::priority_queue, std::partition, when i use the three commente ...

  10. Case of the Zeros and Ones 分类: CF 2015-07-24 11:05 15人阅读 评论(0) 收藏

    A. Case of the Zeros and Ones time limit per test 1 second memory limit per test 256 megabytes input ...

随机推荐

  1. 22-MySQL-Ubuntu-备份与恢复

    案例: 将数据库jing_dong_1的数据库备份,然后恢复到数据库jing_dong_2; 步骤如下: 1.备份 注意: mysqldump 不是 mysql; 尖括号的方向; python.sql ...

  2. mac NTFS 关于错误-36,rm Input/output error

    当传输文件时出现Mac错误代码36 当我向一个U盘或存储卡里传输文件时,出现了Mac Error Code36,我该如何解决? Mac,传输文件,错误代码36,U盘,卡片 Mac OS X Snow ...

  3. linux zip,tar压缩文件夹 忽略 .git 文件夾

    linux zip 忽略 .git 文件夾 # zip 命令 zip -r bitvolution.zip bitvolution -x *.git* # tar命令压缩文件夹忽略 .git文件夹 t ...

  4. Windows Server 2003服务器清理C盘空间的资料多个解决方法

    一.关闭IIS HTTPRERR日志功能 默认情况下,2003服务器会把所有IIS访问错误的记录写入 C:WINDOWSsystem32LogFilesHTTPERR 下的 log 文件中,如果访问量 ...

  5. hdu6607 min25筛+杜教筛+伯努利数求k次方前缀和

    推导过程类似https://www.cnblogs.com/acjiumeng/p/9742073.html 前面部分min25筛,后面部分杜教筛,预处理min25筛需要伯努利数 //#pragma ...

  6. XAMPP的安装及使用教程

    https://blog.csdn.net/qq_36595013/article/details/80373597#3%E9%85%8D%E7%BD%AEapache

  7. react diff 极简版

    为什么react这么快呢 ? 因为react用了虚拟DOM: 但是每次虚拟DOM转真实DOM不也是很浪费性能吗 ? nice,所以关键点在Diff算法这里,去对比新旧DOM树,而后通过补丁去更新到真实 ...

  8. 修改web项目的启动页

    修改web项目的启动页

  9. System.Web.Mvc.ControllerBase.cs

    ylbtech-System.Web.Mvc.ControllerBase.cs 1.程序集 System.Web.Mvc, Version=5.2.3.0, Culture=neutral, Pub ...

  10. mysql重点,表查询操作和多表查询

    表单查询 1. 完整的查询语句语法 select distinct(* or 字段名 or 四则运算 )from 表名 where 条件 group by 条件 having 条件 order by ...