LeetCode 网易-1. 分割环(前缀和 + 哈希)

文章目录

    • 1. 题目
    • 2. 解题

1. 题目

小易有 n 个数字排成一个环,你能否将它们分成连续的两个部分(即在环上必须连续),使得两部分的和相等

输入描述:

第一行数据组数 T ,对于每组数据
第一行数字 n ,表示数字个数
接下来一行 n 个数,按顺序给出环上的数字。
2 <= n <= 100000, 1 <= Ai <= 10 ^ 9

输出描述:
对于每组数据,一行输出YES/NO

示例1:
输入
1
6
1 2 3 4 5 6
输出
NO示例2:
输入
1
4
4 4 5 3
输出
YES

来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems/S0WXIw
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

#include<bits/stdc++.h>
using namespace std;
int main()
{int T, n, a, i;cin >> T;while(T--){cin >> n;   vector<long long> arr(n, 0);//注意溢出i = 0;while(n--){cin >> a;if(i == 0)arr[i] = a;elsearr[i] = arr[i-1] + a;//前缀和i++;}if(arr.back()%2 != 0)//和不能被2整除,分不开{cout << "NO" << endl;continue;}unordered_set<long long> s;long long half = arr.back()/2;bool yes = false;for(i = 0; i < arr.size(); ++i){if(s.count(arr[i]-half)){	//前缀和减去half的值存在,即找到连续的和为halfyes = true;break;}s.insert(arr[i]);//更新前缀和的集合}if(yes)cout << "YES" << endl;elsecout  << "NO" << endl;}
}

0 ms 3.2 MB


我的CSDN博客地址 https://michael.blog.csdn.net/

长按或扫码关注我的公众号(Michael阿明),一起加油、一起学习进步!
Michael阿明

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/473677.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

RDD的依赖与分区

1 宽依赖和窄依赖 RDD从具体的依赖的角度讲&#xff0c;有窄依赖和宽依赖2种情况。 窄依赖&#xff1a;指每个父RDD的一个Partition最多被子RDD的一个Partition所使用&#xff0c;例如map、filter等都会产生窄依赖&#xff1b; 宽依赖&#xff1a;指一个父RDD的Partition会被…

爬虫案列:京东商城长裤信息获取

1、创建Scrapy项目 使用全局命令startproject创建项目&#xff0c;创建新文件夹并且使用命令进入文件夹&#xff0c;创建一个名为jingdong的Scrapy项目。 [python] view plaincopy scrapy startproject jingdong 2.使用项目命令genspider创建Spider [python] view plaincopy …

ACwing 2. 01背包问题(DP)

文章目录1. 题目2. 解题1. 题目 有 N 件物品和一个容量是 V 的背包。每件物品只能使用一次。 第 i 件物品的体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。 输出最大价值。 输入格式 …

Redis-Scrapy分布式爬虫:当当网图书为例

Scrapy-Redis分布式策略&#xff1a; Scrapy_redis在scrapy的基础上实现了更多&#xff0c;更强大的功能&#xff0c;具体体现在&#xff1a; reqeust去重&#xff0c;爬虫持久化&#xff0c;和轻松实现分布式 假设有四台电脑&#xff1a;Windows 10、Mac OS X、Ubuntu 16.04、…

Saprk排序

1、基础排序算子sortBy和sortByKey 在Spark中存在两种对RDD进行排序的函数&#xff0c;分别是 sortBy和sortByKey函数。sortBy是对标准的RDD进行排序&#xff0c;它是从Spark0.9.0之后才引入的。而sortByKey函数是对PairRDD进行排序&#xff0c;也就是有Key和Value的RDD。下面…

ACwing 3. 完全背包问题(DP)

文章目录1. 题目2. 解题1. 题目 有 N 种物品和一个容量是 V 的背包&#xff0c;每种物品都有无限件可用。 第 i 种物品的体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使这些物品的总体积不超过背包容量&#xff0c;且总价值最大。 输出最大价值。…

Crontab定时任务访问url实例

以下操作均是在ubuntu 下操作的&#xff1a; 1、进入crontab文件的编写状态&#xff1a; crontab -e 2、第一次进入编写crontab文件的界面&#xff0c;系统会提示选择相应的编辑器&#xff0c;一般我们选择vi编辑器就可以了&#xff1a;选择/usr/bin/vim.tiny 12345Select a…

ACwing 4. 多重背包问题 I(DP)

文章目录1. 题目2. 解题1. 题目 有 N 种物品和一个容量是 V 的背包。 第 i 种物品最多有 si 件&#xff0c;每件体积是 vi&#xff0c;价值是 wi。 求解将哪些物品装入背包&#xff0c;可使物品体积总和不超过背包容量&#xff0c;且价值总和最大。 输出最大价值。 输入格式…

数据算法与结构基本知识

数据结构与算法作用 没有看过数据结构和算法&#xff0c;有时面对问题可能会没有任何思路&#xff0c;不知如何下手去解决&#xff1b;大部分时间可能解决了问题&#xff0c;可是对程序运行的效率和开销没有意识&#xff0c;性能低下&#xff1b;有时会借助别人开发的利器暂时…

Master HA源码解析

1、Master HA概述 Spark在生产上做HA一般采用的是通过zookeeper的方式&#xff0c;配置3个master的话是比较可靠的方式。采用zookeeper做HA的话zookeeper会保存整个Spark程序运行时候的元数据&#xff08;包括Workers&#xff0c;Drivers&#xff0c;Applications&#xff0c;…

DNS坑爹呢?!

昨天下午3点多&#xff0c;大量网民反映无法上网。多家DNS服务商通过微博透露&#xff0c;在1月21日下午3点20分左右&#xff0c;全国所有通用顶级域的根出现异常&#xff0c;导致部分国内网民无法访问.com域名网站&#xff0c;对中国互联网造成严重影响。 昨天下午有事出去&am…

数据结构顺序表基本流程

生活中很多事物是有顺序关系的&#xff0c;如班级座位从前到后是按排的顺序&#xff0c;从左到右是按列的顺序&#xff0c;可以很方便的定位到某一个位置&#xff0c;但如果座位是散乱的&#xff0c;就很难定位。 在程序中&#xff0c;经常需要将一组&#xff08;通常是同为某…

Spark2.x RPC解析

1、概述 在Spark中很多地方都涉及网络通信&#xff0c;比如Spark各个组件间的消息互通、用户文件与Jar包的上传、节点间的Shuffle过程、Block数据的复制与备份等。Spark 2.0 之后&#xff0c;master 和worker 之间完全不使用akka 通信&#xff0c;改用netty实现。因为使用Akka…

LeetCode 1629. 按键持续时间最长的键

文章目录1. 题目2. 解题1. 题目 LeetCode 设计了一款新式键盘&#xff0c;正在测试其可用性。测试人员将会点击一系列键&#xff08;总计 n 个&#xff09;&#xff0c;每次一个。 给你一个长度为 n 的字符串 keysPressed &#xff0c;其中 keysPressed[i] 表示测试序列中第 …

数据结构中的栈

整理衣服时&#xff0c;先放冬天的衣服&#xff0c;后放夏天的衣服&#xff0c;这样夏天的衣服就在上面&#xff0c;方便夏季取用。 栈&#xff08;stack&#xff09;&#xff0c;有些地方称为堆栈&#xff0c;是一种容器&#xff0c;可存入数据元素、访问元素、删除元素&…

数据结构中的队列

生活中很多时候需要排队来维持秩序&#xff0c;如等公交、取票、办理银行业务等。 队列&#xff08;queue&#xff09;是只允许在一端进行插入操作&#xff0c;而在另一端进行删除操作的线性表。 队列是一种先进先出的&#xff08;First In First Out&#xff09;的线性表&am…

SparkContext解析

1、SparkContext概述 Spark的程序编写是基于SparkContext的&#xff0c;体现在2方面&#xff1a;①Spark编程的核心基础&#xff08;RDD&#xff09;&#xff0c;第一个RDD是由SparkContext创建的&#xff1b;②Spark程序的调度优化也是基于SparkContext&#xff0c;RDD在一开…

LeetCode 1630. 等差子数组

文章目录1. 题目2. 解题1. 题目 如果一个数列由至少两个元素组成&#xff0c;且每两个连续元素之间的差值都相同&#xff0c;那么这个序列就是 等差数列 。更正式地&#xff0c;数列 s 是等差数列&#xff0c;只需要满足&#xff1a;对于每个有效的 i &#xff0c; s[i1] - s[…

LeetCode 1631. 最小体力消耗路径(DFS + 二分查找)

文章目录1. 题目2. 解题1. 题目 你准备参加一场远足活动。给你一个二维 rows x columns 的地图 heights &#xff0c;其中 heights[row][col] 表示格子 (row, col) 的高度。 一开始你在最左上角的格子 (0, 0) &#xff0c;且你希望去最右下角的格子 (rows-1, columns-1) &…

Spark资源调度分配

1、任务调度与资源调度 任务调度&#xff1a;是指通过DAGScheduler&#xff0c;TaskScheduler&#xff0c;SchedulerBackend等进行的作业调度。 资源调度&#xff1a;是指应用程序获取资源。 任务调度是在资源调度的基础上&#xff0c;没有资源调度&#xff0c;那么任务调度…