基于观察可以发现,双方都一定能保证取到每一列靠近自己的 \(\lfloor \frac{k}{2} \rfloor\) 个元素。

那么一旦一个人想要取另一个人能必然能取的部分,另一个人必然可以不让其取到。

因此,一个人去取对方一定能取到的部分是无意义的。

因此双方的策略必然都是先将靠近自身的 \(\lfloor \frac{k}{2} \rfloor\) 个元素取完,在抢中间剩下的元素。

那么对于最后剩下的元素,每次贪心的选择一定是最优的,因此双方的选择必然都是每次选取当前最大的元素。

那么我们按照这个流程模拟即可,复杂度 \(O(\sum s_i + n \log n)\)。

#include <bits/stdc++.h>
using namespace std;
#define rep(i, l, r) for (int i = l; i <= r; ++i)
#define dep(i, l, r) for (int i = r; i >= l; --i)
const int N = 100 + 5;
int n, m, s, x, A, B, a[N];
int read() {
char c; int x = 0, f = 1;
c = getchar();
while (c > '9' || c < '0') { if(c == '-') f = -1; c = getchar();}
while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
return x * f;
}
int main() {
n = read();
rep(i, 1, n) {
s = read();
if(s & 1) {
rep(j, 1, s / 2) A += read();
a[++m] = read();
rep(j, 1, s / 2) B += read();
}
else {
rep(j, 1, s / 2) A += read();
rep(j, 1, s / 2) B += read();
}
}
sort(a + 1, a + m + 1);
dep(i, 1, m) {
if((m - i + 1) & 1) A += a[i];
else B += a[i];
}
printf("%d %d", A, B);
return 0;
}

最新文章

  1. 支付宝APP支付后台参数生成Java版(一)
  2. 解决zookeeper报错[NIOServerCxn.Factory:0.0.0.0/0.0.0.0:2181:NIOServerCnxn@362] - Exception causing close
  3. python学习笔记2-functools.wraps 装饰器
  4. fill 函数
  5. Js5中基本类型
  6. Android Studio 环境配置优化
  7. 接受、online、见刊时,期刊的 IF 都不同,究竟算发几分期刊?
  8. EventBus(事件总线)
  9. iOS中date和string的相互转换
  10. mysql CMD命令
  11. 【JAVA零基础入门系列】Day13 Java类的继承与多态
  12. MicroPython可视化编程开发板—TurnipBit自制MP3教程实例
  13. UML系列图2
  14. bzoj 1046: [HAOI2007]上升序列
  15. Pat1128:N Queens Puzzle
  16. 利用Bootstrap Paginator插件和KnockoutJS完成分页功能
  17. matlab函数int2str, num2str, str2num
  18. gulp前端自动化构建并上传oss
  19. Luogu5290 十二省联考2019春节十二响(贪心+启发式合并)
  20. @ReequestParam

热门文章

  1. 第二十一个知识点:CRT算法如何提高RSA的性能?
  2. Accelerating Deep Learning by Focusing on the Biggest Losers
  3. Flink sql 之 微批处理与MiniBatchIntervalInferRule (源码分析)
  4. Java初学者作业——判断该年份是否为闰年,并输出判断结果
  5. Hexo博客部署到腾讯云服务器全过程(Nginx,证书,HTTPS),你要的这里都有
  6. Drools集成SpringBootStarter
  7. Python DataFrame to_sql方法插入日期或时间类型的数据时 报ORA-01861 文字与字符串不匹配 的解决方法
  8. jave 数据类型 float 的 正确赋值
  9. 自定义异步爬虫架构 - AsyncSpider
  10. Kube-OVN 0.6.0 发布,支持 IPv6、流量镜像及更多功能