传送门

•题意

给k个数列,从中k个数列中找出任意2个数列 i ,j

使得数列i删除第x个数,和数列j删除第y个数的和相等

若存在,输出 i ,x 和 j,y

•思路

每个数列之间的联系为数列的和之间的差det

如果开二维数组记录每个数列之间的det的话,显然是不可行的_(:з」∠)_

这里用map<x ,pair<i ,j > >mp表示序列 i 删除第 j 个数后的总和为 x;

如果某两个序列各删除一个数,得到的总和相等,

也就是后一个序列得到的总和已存在(被前一个所记录)的话,就找到了

•代码

 1 #include<bits/stdc++.h>
 2 using namespace std;
 3 #define ll long long
 4 const int maxn=2e5+5;
 5 map<int,pair<int,int> > mp;
 6 int a[maxn];
 7 ll sum;
 8 int main()
 9 {
10     int k;
11     cin>>k;
12     for(int i=1;i<=k;i++)
13     {
14         int n;
15         cin>>n;
16         sum=0;
17         for(int j=1;j<=n;j++)
18         {
19             cin>>a[j];
20             sum+=a[j];
21         }
22         for(int j=1;j<=n;j++)
23         {
24             int x=sum-a[j];
25             if(mp.count(x)&&mp[x].first!=i)
26             {
27                 cout<<"YES"<<endl;
28                 cout<<i<<' '<<j<<endl;
29                 cout<<mp[x].first<<' '<<mp[x].second<<endl;
30                 return 0;
31             }
32             mp[x]=make_pair(i,j);
33         }
34     }
35     cout<<"NO"<<endl;
36 }

View Code

转载于:https://www.cnblogs.com/MMMinoz/p/11228539.html

Codeforces Round #486 (Div. 3) C Equal Sums (map+pair)相关推荐

  1. Codeforces Round #772 (Div. 2) D. Infinite Set (动态规划+思维)

    题目链接 https://codeforces.com/contest/1635/problem/D 题面 题意 输入一个n表示数组 aaa 的长度,然后输入一个 p,然后输入n个不同的元素,问在 [ ...

  2. Codeforces Round #772 (Div. 2) C. Differential Sorting(思维+构造)

    题目链接 https://codeforces.com/contest/1635/problem/C 题面 题意 给你一个长度为n的数组 a[i]a[i]a[i] ,我们有一种操作让 a[x]=a[y ...

  3. Codeforces Round #641 (Div. 2)A~E题解(数论场)

    题目大意就是给你一个数执行k次操作,每次加上这个数的最小质因子(除了一以外)变成一个新的数,问最后的数是多少 解题思路:很明显如果一开始是偶数的话就会一直加2加2,如果是奇数的话先找到这个数的质因子一 ...

  4. Codeforces Round #665 (Div. 2) Maximum Distributed Tree(树上贪心)

    整理的算法模板合集: ACM模板 点我看算法全家桶系列!!! 实际上是一个全新的精炼模板整合计划 CF1401D Maximum Distributed Tree(树上贪心) 给定一棵 nnn 个节点 ...

  5. Codeforces Round #666 (Div. 2)D. Stoned Game(博弈问题)

    problem T和HL玩游戏,n堆石头,玩家轮流在石堆中选择一个(但不能是上一个人取的那堆)取一个石子 一旦有一方不能取石头则判输 solution 统计所有石头数,如果总数小于mx(最多石头的一堆 ...

  6. Codeforces Round #323 (Div. 2): C. GCD Table(思维题)

    题意: 给你一个长度为n的序列a[1]~a[n], 之后用这个序列生成一个n*n的矩阵,其中矩阵第i行第i列的值为a[i],第i行第j列(j!=i)的值为Gcd(a[i], a[j]),现在给你一个矩 ...

  7. Codeforces Round #468 (Div. 2): D. Peculiar apple-tree(水题)

    真 · 水题,只不过很难看懂 题意:给你一棵树,求出有多少x(x>=0)满足,与跟距离为x的节点个数为奇数 #include<stdio.h> #include<vector& ...

  8. Codeforces Round #456 (Div. 2): E. Prime Gift(折半枚举)

    题意: 给你一个长度为n的集合,如果一个数满足它所有的质因子都在这个集合中,那么这个数就是合法的 求第k小的合法数(1<=n<=16),答案不会超过1e18 思路: 将n个数对半拆成两个集 ...

  9. Codeforces Round #327 (Div. 2) C Median Smoothing(找规律)

    分析: 三个01组合只有八种情况: 000 s 001 s 010 0 011 s 100 s 101 1 110 s 111 s 可以看出只有010,101是不稳定的.其他都是稳定的,且连续地出现了 ...

最新文章

  1. 直播 | DPDK中国技术峰会2017
  2. 截取指定长度html内容,并保留html格式标记
  3. 职业生涯又一个转折点
  4. ERP云端争霸 甲骨文和SAP打对攻 金蝶忙转身用友原地等待
  5. androidid什么时候会变_今天是“三九”为什么老话说:三九冰上走一走,过年也能露一手!...
  6. kafka时间轮linux时间轮,Kafka解惑之时间轮 (TimingWheel)
  7. oracle如何往dg加盘_oracle 在物理机上添加磁盘操作
  8. 流量主系列|微信AI人脸转换小程序源码
  9. HTML 如何禁用缓存
  10. 隐藏了十年的 Sudo 漏洞曝出:无需密码就能获取 root 权限
  11. 行业观察:2021年LTE将成M2M市场主导技术
  12. 蓝桥杯笔记:DFS(深度优先搜索)解决问题
  13. docker-compose 学习:通过 image 指令指定镜像搭建一个简单LNMP
  14. 封装和参数调用(格式修改)
  15. 免费下载百度文库需下载券文件
  16. mac上安装和启动kafka
  17. 使用RestTemplate  对接微信付款码支付接入问题记录
  18. 微信登录画面_微信进入界面的图片有什么含义?
  19. YouTube营销活动方案
  20. Python——下载音乐(干货)

热门文章

  1. 华为p50预计售价鸿蒙是什么,华为P50pro预计售价多少 华为P50Pro参数配置
  2. java文件名大小_java 比较指定文件夹内.txt文件名的大小
  3. jquery绑定元素id事件_JQuery绑定click事件的3种写法
  4. rp软件app流程图_Axure RP 9 for Mac交互原型设计软件
  5. 有关计算机基础的论文,有关计算机基础论文范文.doc
  6. java 最小堆_Java最小堆实现
  7. python编程神器下载_Python编程神器 -程序员必备开发手册
  8. java arguments_命令行中执行带参数的java程序(Command-Line Arguments)
  9. 【Node.js】编码实现目录浏览服务
  10. JavaScript:向数组开头添加