题意:给出一个数列{a1, a2, ..., an},问是否存在一段序列ai - ai-1 + ai-2 + ... + aj等于k。

解法:只要求前缀和根据奇偶情况不同+k或-k的值是否存在就可以了……果断用map打了个表……然后T了

然后学了新姿势……哈希大法好啊。

代码:

#include<stdio.h>
#include<string.h>
using namespace std;
typedef long long LL;
const int mod = 836131;
int info[mod], nxt[1000005];
LL num[1000005];
LL sum[1000005];
int top;
inline void inst(LL x)
{int y = x % mod;if(y < 0)y += mod;for(int i = info[y]; i; i = nxt[i])if(num[i] == x)return ;nxt[++top] = info[y];info[y] = top;num[top] = x;return ;
}
inline bool query(LL x)
{int y = x % mod;if(y < 0)y += mod;for(int i = info[y]; i; i = nxt[i])if(num[i] == x)return true;return false;
}
int main()
{int T, cse = 1;scanf("%d", &T);while(T--){memset(info, 0, sizeof(info));top = 0;int n;LL k;scanf("%d%lld", &n, &k);bool ans = false;sum[0] = 0;for(int i = 1; i <= n; i++){LL a;scanf("%lld", &a);if(i & 1)sum[i] = sum[i - 1] + a;elsesum[i] = sum[i - 1] - a;}for(int i = n; i >= 0; i--){inst(sum[i]);if(i & 1){if(query(sum[i] - k)){ans = true;break;}}elseif(query(sum[i] + k)){ans = true;break;}}printf("Case #%d: ", cse++);if(ans)printf("Yes.\n");elseprintf("No.\n");}
}

  

转载于:https://www.cnblogs.com/Apro/p/4357209.html

HDU 5183 Negative and Positive (NP)相关推荐

  1. HDU 5183 Negative and Positive (NP) (set + 读入外挂 乱搞)

    Negative and Positive (NP) Time Limit: 3000/1500 MS (Java/Others)    Memory Limit: 65536/65536 K (Ja ...

  2. Check your file - it most likely has keys in far negative or positive timeline.

    首先非常感谢动作师[张玉巍],是他给出的解决办法! 问题: 在导入动作的时候出现一个错误: ImportFBX Errors: Time range (447392) for translation ...

  3. Type Ⅰ error(false positive) Type Ⅱ error(false negative)

             特异性低=误诊率高                  敏感性高=漏诊率低       prediction position=TP+FP    正确率(precision) PPV= ...

  4. Remove Double Negative(去除双重否定)

    WHAT 双重否定的条件语句,可以使用一个肯定的条件语句代替 记住:双重否定 = 肯定 本次重构涉及到的基本重构手法: Extract Method(提炼方法) Inline Method(内联方法) ...

  5. 推荐系统的个性化排名

    推荐系统的个性化排名 Personalized Ranking for Recommender Systems 在前几节中,只考虑了明确的反馈,并根据观察到的评分对模型进行了训练和测试.这种方法有两个 ...

  6. 我用 YOLOv5 做情感识别!

    作者 | 陈信达 来源 | Datawhale AI技术已经应用到了我们生活中的方方面面,而目标检测是其中应用最广泛的算法之一,疫情测温仪器.巡检机器人.甚至何同学的airdesk中都有目标检测算法的 ...

  7. pytorch 模型可视化_高效使用Pytorch的6个技巧:为你的训练Pipeline提供强大动力

    点击上方"AI公园",关注公众号,选择加"星标"或"置顶" 作者:Eugene Khvedchenya 编译:ronghuaiyang 导读 ...

  8. 使用scikit-learn进行预处理

    文章目录 PreProcessing using scikit-learn| Common import Introduction to PreProcessing|预处理简介 StandardSca ...

  9. Unet实现图像分割(四)

    configuration.txt #数据路径 以及 训练集 测试集的名字 [data paths] path_local = ./DRIVE_datasets_training_testing/ t ...

最新文章

  1. 昨天,我用 Python 写了一个婚介模型
  2. 被面试官问懵B了,十亿级数据ES搜索怎么优化?
  3. 【Android 高性能音频】AAudio 音频流 缓冲区 简介 ( AAudio 音频流内部缓冲区 | 缓冲区帧容量 | 缓冲区帧大小 | 音频数据读写缓冲区 )
  4. 定义一个集合类Set,(考察动态数组的建立)
  5. Duang,您的钉钉应用已上线!云开发5分钟快速打造钉钉会议室预定系统
  6. 做大厂程序员是一种怎样的体验?这四位“百度程序员”说出了自己的看法!
  7. aspx后台调用前台jquery_jQuery调用Asp.Net后台方法
  8. [脚本编程] 过云盾、D盾各种盾shell
  9. jvm入门到详解-1
  10. Python 读取数据
  11. 遇到问题---hosts不起作用问题的解决方法
  12. mean shift 跟踪算法
  13. JAVA声明圆锥体类,实现Area和Volume接口,计算表面积和体积,按体积比较大小
  14. JS+CSS文章查看系统
  15. 华为智慧屏鸿蒙os的特点,华为智慧屏功能特点一览
  16. mysql 里 CST 时区的坑
  17. ubuntu下载神器---xdm
  18. php-获取从今天开始计算第5个工作日的日期
  19. python逆序输出_python倒序输出
  20. arm-linux东东之nand之一:nand 初始化

热门文章

  1. 华为交换机静态路由配置案例_快速了解配置三层交换机策略路由配置
  2. matlab求最大公倍数_小学数学最大公因数最小公倍数练习
  3. 清空本地_PyQt5播放实时视频流或本地视频文件
  4. python正则表达式怎么看_python如何使用正则表达式
  5. php str_replace替换特殊字符
  6. python 数据库的中文乱码问题
  7. 下列有关html文件结构的说法错误的是,计算机教师招聘考试_网络部分选择题+答案(12页)-原创力文档...
  8. null索引表键值_MySQL 的B+树索引
  9. 查看oracle大页,在Oracle11.2.0.3.0上开启大页(hugepages)的详细解析
  10. 新疆特岗计算机考试题,2020新疆特岗教师笔试资料领取(小学信息技术)