E - This Message Will Self-Destruct in 5s (atcoder.jp)

题意

给出数组,从数组中找到满足 q [ i ] + q [ j ] = j - i 的 i 和 j

思路:  转换之后就变成 q[i]+i=j-q[j]  用map存储

代码

#include<iostream>
using namespace std;
#define ll long long
const ll N=5e5+10;
ll p[N],q[N][2];int main()
{ll n;cin>>n;for(ll i=1;i<=n;i++){cin>>p[i];if(i-p[i]>=0)q[i-p[i]][1]++;if(i+p[i]<=n)q[i+p[i]][0]++;}ll ans=0;for(int i=1;i<=n;i++){if(i-p[i]>=0)ans+=q[i-p[i]][0];if(i+p[i]<=n)ans+=q[i+p[i]][1];}cout<<ans/2<<endl;return 0;
}

ABC166E This Message Will Self-Destruct in 5s 题解相关推荐

  1. POJ 2774 Long Long Message SP1811 LCS - Longest Common Substring 题解

    POJ:题目传送门 洛谷:题目传送门 题目大意: 求两个字符串的最长公共子串长度. 题解 后缀数组入门题,将两个字符串接在一起,中间用一个字符集以外的字符隔开,然后求出 h e i g h t hei ...

  2. vue单文件props写法_vue开发中怎么按需加载需要被填入props和自定义事件的组件?...

    这种场景你可能需要把模态框包装成插件.vue插件开发和组件的区别 - 水秋玄​im.mkinit.com vue插件和组件的区别 使用插件的方式包装组件和直接注册全局组件其实是一样的,都是注册组件.不 ...

  3. c++异常Try catch

    c++异常Try catch 分类: c++专区 功能函数测试集锦2014-04-09 17:43 1505人阅读 评论(0) 收藏 举报 一.简单的例子 首先通过一个简单的例子来熟悉C++ 的 tr ...

  4. Huffman编码原理详解

    转载自这里 1.概述      huffman编码是一种可变长编码(  VLC:variable length coding))方式,于1952年由huffman提出.依据字符在需要编码文件中出现的概 ...

  5. C++中try--catch用法

    在c++中,可以直接抛出异常之后自己进行捕捉处理,如:(这样就可以在任何自己得到不想要的结果的时候进行中断,比如在进行数据库事务操作的时候,如果某一个语句返回SQL_ERROR则直接抛出异常,在cat ...

  6. Huffman编码实现(详细实现)

    1.概述      huffman编码是一种可变长编码(  VLC:variable length coding))方式,于1952年由huffman提出.依据字符在需要编码文件中出现的概率提供对字符 ...

  7. Huffman 编码原理详解(代码示例)

    1.概述 huffman编码是一种可变长编码(  VLC:variable length coding))方式,于1952年由huffman提出.依据字符在需要编码文件中出现的概率提供对字符的唯一编码 ...

  8. C++:类的拷贝和移动、初始化和赋值

    C++:类的拷贝和移动.初始化和赋值 测试代码 <C++Primer>学到拷贝控制这一章开始有点犯晕,拷贝和移动的各种使用条件和限制很不好理解.同时,在使用类对象的时候,明显能够感觉到正如 ...

  9. oracle ipc message,【案例】Oracle RAC IPC send timeout error导致RAC的节点挂起解决办法

    天萃荷净 Oracle研究中心案例分析:运维DBA反映Oracle RAC环境数据库节点挂起,分享日志发现是由于IPC send timeout error导致RAC的节点挂起. 本站文章除注明转载外 ...

最新文章

  1. 001/Docker入门(Mooc)
  2. websocketd 实现浏览器查看服务器实时日志
  3. 89600 matlab,是德KEYSIGHT N9000B CXA 信号分析仪,多点触控,9 kHz 至 26.5 GHz
  4. [SAP成都] SAP UI5应用的sap-ui-core.js被加载之前,还有哪些js文件被加载了
  5. ubuntu 任务栏监视器_从系统任务栏监视Google服务
  6. Ids4 认证保护 API 方案更新
  7. .NET/C# 获取一个正在运行的进程的命令行参数
  8. NHibernate 3.3
  9. 火了 2 年的服务网格究竟给微服务带来了什么?(转载)
  10. 统计某个字符串中指定字符串出现的次数
  11. [HNOI2015]开店
  12. Name Mangling and extern “C” in C++
  13. electron入门笔记(三)- 引入bootstrap
  14. 骑士进化论RPG游戏实现
  15. [自我介绍]第一篇博客
  16. 1400——507B、1370C、1363B、1324D、1365C、1374D
  17. 公务员考试行测、申论答题时间分配
  18. Binomial Coefficient(二项式系数)的计算
  19. 编译Android下可用的全平台FFmpeg(包含libx264与libfdk-aac)
  20. 百家号素材审核规范说明

热门文章

  1. 单元格等于计算机日期,《excel表格怎样自动填写日期》 Excel单元格中自动获取当前日期与时间...
  2. 智能三子棋——保姆级教学。
  3. 30天自制操作系统【笔记】
  4. Linux中$home和波浪号~
  5. linux 怎样安装 nginx
  6. 易基因|ChIP-seq技术及其在植物研究领域中的应用
  7. star- Transformer
  8. html格式化整理输出JSON示例(测试)
  9. 元宇宙发展研究报告2.0版本(清华大学)
  10. 分布式数据库稳定性资料整理