题意:给定6个矩形的长和宽wi和hi(1<=wi,hi<=1000),判断它们能否构成长方体的六个面。
思路:一个矩形的六个面中,每两个对立面是相同的,相当于由三个不同的面复制而成,而这三个面又相连在一起,所以最多只会出现三条不同的长度线条。

import java.util.Scanner;
import java.lang.String;public class Main {static Scanner sc = new Scanner(System.in);public static void main(String[] args) {    while (sc.hasNext()) {print();}}public static boolean judge() {int[][] nub = new int[6][2];int[] tem = new int[2];for (int i = 0; i < 6; i++)for (int j = 0; j < 2; j++)nub[i][j] = sc.nextInt();for (int k = 0; k < 6; k = k + 2) {int t;for (t = k + 1; t < 6; t++) {if (nub[k][0] == nub[t][0] && nub[k][1] == nub[t][1]|| nub[k][0] == nub[t][1] && nub[k][1] == nub[t][0]) {//将相同的两面放在一起if (t != k + 1) {tem[0] = nub[t][0];tem[1] = nub[t][1];nub[t][0]=nub[k+1][0];nub[t][1]=nub[k+1][1];nub[k+1][0]=tem[0];nub[k+1][1]=tem[1] ;}break;}else continue;}if(t==6)return false;       }tem[1]=nub[0][1];if(nub[2][0]==nub[0][0])//每两个不同的面有一个共同的边,另一面的两边是这两面的另外一边。{tem[1]=nub[2][1];tem[0]=nub[0][1];}else if(nub[2][0]==nub[0][1]){tem[1]=nub[2][1];tem[0]=nub[0][0];}else if(nub[2][1]==nub[0][1]){tem[1]=nub[2][0];tem[0]=nub[0][0];}else if(nub[2][1]==nub[0][0]){tem[1]=nub[2][0];tem[0]=nub[0][1];}else return false;if(tem[0]==nub[4][0]&&tem[1]==nub[4][1]||tem[0]==nub[4][1]&&tem[1]==nub[4][0])return true;else return false;//return true;}public static void print() {System.out.println(judge()?"POSSIBLE":"IMPOSSIBLE");}
}

UVA1587 Box相关推荐

  1. UVa1587 - Box

    //UVa1587 - Box //题目:给出6个矩形的长和宽,判断它们能否构成长方体的六个面 //6/3=2 个相同的面 WA,no more data in #include <stdio. ...

  2. UVa1587 Box(排序)

    题意:给出6个矩形的长和宽,问是否可以构成一个长方体. 思路:长方体的长宽高分别为a,b,c,假设a < b < c,6个矩形分别为ab,ab,ac,ac,bc,bc 代码如下: #inc ...

  3. 算法竞赛入门经典(第二版) | 习题3-10 盒子 (pair结构体)(UVa1587,Box)

    大意: 给定6个矩形的长和宽,判断他们能否构成一个长方体. 题目(提交)链接→UVa-1587 没使用过该网站的同学请猛戳这里→vJudge教程 储备知识: pair结构体: pair是将2个数据组合 ...

  4. [刷题]算法竞赛入门经典 3-10/UVa1587 3-11/UVa1588

    书上具体所有题目:http://pan.baidu.com/s/1hssH0KO 题目:算法竞赛入门经典 3-10/UVa1587:Box 代码: //UVa1587 - Box #include&l ...

  5. 《算法竞赛入门经典(第2版)》——学习记录

    前言:   这里主要记录本人在学习紫书过程中充分理解过的题目的AC代码,便于以后回顾时查找代码和思路,毕竟看别人的真的有点难懂.此外,本书甚至是本书之外的相关知识学习也可能在此留下记录.   作为一只 ...

  6. UVA1587 盒子 Box 题解

    题意翻译 给定6个矩形的长和宽wi和hi(1<=wi,hi<=10000),判断它们能否构成长方体的六个面. 输入输出样例 Sample Input 1345 2584 2584 683 ...

  7. UVA1587 盒子 Box

    用的最笨的暴力的方法,看了以前写的代码比较短但是也没有心思去搞明白怎么回事了 #include <bits/stdc++.h>#define fi first #define se sec ...

  8. 远程控制virtual box虚拟机系统的三种方式

    远程控制virtual box虚拟机系统的三种方式[阅读时间:5分钟] 1.使用现有的远程控制软件 2.使用SSH连接 3.使用远程桌面控制虚拟机系统 对于把虚拟机安装在寝室笔记本的人来说,能够远程控 ...

  9. ICE BOX 配置,使用----第一篇

    一 理论部分 (1) 为什么要使用icebox? icebox server代替了通常的server. icebox是为了方便集中管理多个ice服务而建立的. 它通过使用icebox服务器,把ice服 ...

最新文章

  1. Const *ptr ptr
  2. asp.net 域名欺骗式开发
  3. 企业新站上线应注意的几个问题
  4. 基于弹性束图匹配的人脸识别
  5. 想找首歌来表达心情!
  6. 类与接口(五)java多态、方法重写、隐藏
  7. 计算机控制的点火系统由,第八节(点火系统)
  8. BZOJ 1070: [SCOI2007]修车(最小费用最大流)
  9. 小程序不同页面之间通讯的解决方案 1
  10. scapy获取ip_如何使用scapy从数据包中读取整个ip层和tcp层?
  11. 计算机进入局域网共享,win10打开局域网共享的四个步骤——亲测有效
  12. Windows重新生成UEFI引导,解决Windows蓝屏\BCD 0xc0000098
  13. 申论该怎么学?申论作文如何提高
  14. Linux系统u盘win7没驱动程序,u盘安装win7找不到设备驱动程序,教您解决u盘安装win7找不到设备驱动程序...
  15. 菜鸟必知之网络安全常识
  16. PDF 格式的文件编辑难度非常大,相比 .docx格式,它存在的意义是什么?
  17. gpio上拉失效问题
  18. 六则糟糕代码的优化方案分享
  19. 如何去掉Qt布局(Layout)内控件之间的空隙
  20. 《人类简史》——一场引人入胜的人类征途

热门文章

  1. 一级计算机综合训练第五卷,2014年计算机等级考试一级MSOFFICE综合训练(5).pdf
  2. 全息投影是怎么实现人机交互的吗?
  3. 计算机儿歌音乐谱大全,简单乐谱儿歌有哪些?
  4. 你不了解你的健康数据会让你生病
  5. 超越Scrum:给游戏开发者的精益和看板
  6. 修改金蝶kis服务器的文件路径,金蝶kis改服务器地址
  7. ARX 多段线的合并
  8. OpenCV之图片预处理方法
  9. 鼠标滚动分页查询 下拉过滤
  10. s2b2c、b2b2c商城系统的区别是什么?