题目链接:http://codeforces.com/contest/733/problem/D

用map<pair<int, int>int>标记(第一次用~)...

代码:

 #include <bits/stdc++.h>
#define MAXN 100001
using namespace std; typedef pair<int, int> pair1;
typedef map<pair1, int> map1; struct gg{
int x, y;
int xx, yy;
int xxx, yyy;
}jj[MAXN*]; int main(void){
int n, k=;
map1 mp;
for(int i=; i<MAXN; i++){
jj[i].x=jj[i].y=jj[i].xx=jj[i].yy=jj[i].xxx=jj[i].yyy=;
}
scanf("%d", &n);
for(int i=; i<=n; i++){
int a[], ok1=, ok2=, ok3=;
scanf("%d%d%d", &a[], &a[], &a[]);
sort(a, a+);
if(a[]==a[]){
ok1=;
}
if(a[]==a[]){
ok2=;
}
if(a[]==a[]){
ok3=;
}
int flag1=mp[pair1(a[], a[])];
if(flag1==){
jj[k].x=a[];
jj[k].y=a[];
jj[k].xx=a[];
jj[k].xxx=i;
mp[pair1(a[], a[])]=k;
k++;
}else{
if(jj[flag1].xx>jj[flag1].yy){
swap(jj[flag1].xx, jj[flag1].yy);
swap(jj[flag1].xxx, jj[flag1].yyy);
}
if(jj[flag1].xx<a[]){
jj[flag1].xx=a[];
jj[flag1].xxx=i;
}
}
if(ok1){
continue;
}
if(!ok3){
int flag2=mp[pair1(a[], a[])];
if(flag2==){
jj[k].x=a[];
jj[k].y=a[];
jj[k].xx=a[];
jj[k].xxx=i;
mp[pair1(a[], a[])]=k;
k++;
}else{
if(jj[flag2].xx>jj[flag2].yy){
swap(jj[flag2].xx, jj[flag2].yy);
swap(jj[flag2].xxx, jj[flag2].yyy);
}
if(jj[flag2].xx<a[]){
jj[flag2].xx=a[];
jj[flag2].xxx=i;
}
}
}
if(ok2){
continue;
}
int flag3=mp[pair1(a[], a[])];
if(flag3==){
jj[k].x=a[];
jj[k].y=a[];
jj[k].xx=a[];
jj[k].xxx=i;
mp[pair1(a[], a[])]=k;
k++;
}else{
if(jj[flag3].xx>jj[flag3].yy){
swap(jj[flag3].xx, jj[flag3].yy);
swap(jj[flag3].xxx, jj[flag3].yyy);
}
if(jj[flag3].xx<a[]){
jj[flag3].xx=a[];
jj[flag3].xxx=i;
}
}
}
int cc=, dd=, ee=;
for(int i=; i<k; i++){
int cnt=min(jj[i].x, jj[i].y);
cnt=min(cnt, jj[i].xx+jj[i].yy);
if(cc<cnt){
cc=cnt;
dd=jj[i].xxx;
ee=jj[i].yyy;
}
}
if(dd&&ee){
printf("2\n%d %d\n", dd, ee);
}else{
printf("1\n%d\n", dd+ee);
}
return ;
}

cf378D(stl模拟)的更多相关文章

  1. stl+模拟 CCF2016 4 路径解析

    // stl+模拟 CCF2016 4 路径解析 // 一开始题意理解错了.... #include <iostream> #include <string> #include ...

  2. 【STL+模拟】UVa 506 - System Dependencies

    System Dependencies  Components of computer systems often have dependencies--other components that m ...

  3. STL——模拟实现空间配置器

    目录 问题 SGI版本空间配置器-std::alloc 一级空间配置器 二级空间配置器 Refill.chunkAlloc函数 最后,配置器封装的simple_alloc接口 问题 我们在日常编写C+ ...

  4. UVA - 11995 - I Can Guess the Data Structure! STL 模拟

    There is a bag-like data structure, supporting two operations: 1 x Throw an element x into the bag. ...

  5. CCF 201403-3 命令行选项 (STL模拟)

    问题描述 请你写一个命令行分析程序,用以分析给定的命 令行里包含哪些选项.每个命令行由若干个字符串组成,它们之间恰好由一个空格分隔.这些字符串中的第一个为该命令行工具的名字,由小写字母组成,你的程序 ...

  6. CCF 201403-2 窗口 (STL模拟)

    问题描述 在某图形操作系统中,有 N 个窗口,每个窗口都是一个两边与坐标轴分别平行的矩形区域.窗口的边界上的点也属于该窗口.窗口之间有层次的区别,在多于一个窗口重叠的区域里,只会显示位于顶层的窗口里的 ...

  7. uva 327 Evaluating Simple C Expressions 简易C表达式计算 stl模拟

    由于没有括号,只有+,-,++,--,优先级简单,所以处理起来很简单. 题目要求计算表达式的值以及涉及到的变量的值. 我这题使用stl的string进行实现,随便进行练手,用string的erase删 ...

  8. HDU5071 - Chat(STL模拟)

    题目描述 略... 题解 现场赛的时候真是脑残...用splay去写..写完发现调试不出来...然后才发现数据范围才5000...不过那时候只有40分钟了..用数组模拟了速度敲了一发.写完只剩10几分 ...

  9. 牛客练习赛31 D 神器大师泰兹瑞与威穆 STL,模拟 A

    牛客练习赛31 D 神器大师泰兹瑞与威穆 https://ac.nowcoder.com/acm/contest/218/D 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 26214 ...

随机推荐

  1. Java多线程基础知识(六)

    一. Java中的线程池 线程池的作用: 1. 降低资源消耗 2. 提高响应速度 3. 提高线程的可管理性 线程池处理流程: 1. 线程池判断核心线程池线程是否都在执行任务,如果不是,则创建一个新的工 ...

  2. iOS开发——高级篇——Objective-C特性:Runtime

    Objective-C是基于C语言加入了面向对象特性和消息转发机制的动态语言,这意味着它不仅需要一个编译器,还需要Runtime系统来动态创建类和对象,进行消息发送和转发.下面通过分析Apple开源的 ...

  3. 自动布局之autoresizingMask使用详解(Storyboard&Code)

    自动布局之autoresizingMask使用详解(Storyboard&Code) http://www.cocoachina.com/ios/20141216/10652.html 必须禁 ...

  4. jquery版时钟(css3实现)

    做时钟的主要原因是因为喜欢,觉得它好看(本人对特效有点爱不释手……).做的时候感觉工程量会有点大,做着做着发现实现起来其实并不难,只要理清思绪,其实还蛮简单的(我制作东西喜欢整体方向制定好,然后边做边 ...

  5. COGS 902 乐曲主题 题解 & hash入门贺

    [题意] 给定一个长为n的序列,元素都是不超过88的正整数,求序列中主题的最大长度. 所谓主题是指在序列中出现了至少两次并且不相交的子串.特别的,主题可以变调,也就是说如果一个子串全部加上或减去一个数 ...

  6. tornado + supervisor + nginx 的一点记录

    看了比较多的blog基本都是这个架构: supervisor ------------ app1 |-------app2 |-------.... |-------appn |-------ngin ...

  7. jQuery操作checkbox实例

    示意图 <script type="text/javascript"> $(function () { $("#ddlNumber").change ...

  8. 【架构】RPC 使用 Haproxy、keepalive作为负载均衡

    参考资料: Haproxy+keepalived 高可用负载:  http://www.tuicool.com/articles/qY7Rz23 keepalived原理(主从配置+haproxy)及 ...

  9. 【GoLang】深入理解slice len cap什么算法? 参数传递有啥蹊跷?

    先上结论 .内置append函数在现有数组的长度 < 时 cap 增长是翻倍的,再往上的增长率则是 1.25,至于为何后面会说. .Go语言中channel,slice,map这三种类型的实现机 ...

  10. 《oracle每天一练》Merge Into 语句代替Insert/Update在Oracle中的应用实战

    转载自窃破天道 动机: 想在Oracle中用一条SQL语句直接进行Insert/Update的操作. 说明: 在进行SQL语句编写时,我们经常会遇到大量的同时进行Insert/Update的语句 ,也 ...