zoukankan      html  css  js  c++  java
  • Codeforces_733_D

    http://codeforces.com/problemset/problem/733/D

    先给边排序,然后按3条边排序,只要判断相邻是否能组成长方体。

    #include<iostream>
    #include<cstring>
    #include<cstdio>
    #include<algorithm>
    using namespace std;
    
    struct xxx
    {
        int a,b,c,p;
    }xx[100005];
    int n,x[3];
    
    bool cmp(xxx X,xxx Y)
    {
        if(X.a == Y.a && X.b == Y.b)    return X.c > Y.c;
        if(X.a == Y.a)  return X.b > Y.b;
        return X.a > Y.a;
    }
    int main()
    {
        scanf("%d",&n);
        int maxx = 0,ans = 1,ans1,ans2;
        for(int i = 1;i <= n;i++)
        {
            scanf("%d%d%d",&x[0],&x[1],&x[2]);
            sort(x,x+3);
            xx[i].a = x[2];
            xx[i].b = x[1];
            xx[i].c = x[0];
            xx[i].p = i;
            if(xx[i].c > maxx)
            {
                maxx = xx[i].c;
                ans1 = i;
            }
        }
        sort(xx+1,xx+n+1,cmp);
        for(int i = 1;i < n;i++)
        {
            if(xx[i].a == xx[i+1].a && xx[i].b == xx[i+1].b)
            {
                x[0] = xx[i].a;
                x[1] = xx[i].b;
                x[2] = xx[i].c+xx[i+1].c;
                sort(x,x+3);
                if(x[0] > maxx)
                {
                    ans = 2;
                    maxx = x[0];
                    ans1 = xx[i].p;
                    ans2 = xx[i+1].p;
                }
            }
        }
        if(ans == 1)    printf("1
    %d
    ",ans1);
        else    printf("2
    %d %d
    ",ans1,ans2);
        return 0;
    }
  • 相关阅读:
    类成员函数的重载、覆盖和隐藏区别 (C++)(转)
    man时括号里的数字是啥意思
    Redis事务
    功能接口
    持久化方式
    宿主
    路由
    静态文件
    Log4Net 配置
    Redis命令与配置
  • 原文地址:https://www.cnblogs.com/zhurb/p/6100050.html
Copyright © 2011-2022 走看看