博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
codeforces #139 A dice tower
阅读量:6094 次
发布时间:2019-06-20

本文共 1320 字,大约阅读时间需要 4 分钟。

 

题意:给你n个骰子,摆成一个塔,且相邻的骰子的接触的面的数字不同。而你看到的只有顶部和某两侧,现在给你的就顶部和某两侧的数字,请问,能否唯一判定所有面的数字。

解法:既然要唯一,且顶部的数(假设为z)确定了,那么要不能唯一判定所有面的数字,那下面的某一个或几个骰子的侧面的数是z或7-z,如此,即可解题,代码如下:

 

import java.io.BufferedInputStream;import java.util.Scanner;public class Main {    public static void main(String[] args) {        Scanner cin = new Scanner(new BufferedInputStream(System.in));        int len = 101;        int[] x = new int[len];        int[] y = new int[len];        int z = -1, n = -1;        boolean flag;        while (cin.hasNext()) {            n = cin.nextInt();            z = cin.nextInt();            flag = true;            for (int i = 0; i < n; i++) {                x[i] = cin.nextInt();                y[i] = cin.nextInt();                if (flag && (0 != i)) {                    if (isTrue(x[i], z) || isTrue(y[i], z)) {                        flag = false;                    }                }            }            if (flag) {                System.out.printf("YES");            } else {                System.out.printf("NO");            }        }        cin.close();    }    private static boolean isTrue(int i, int z) {        if (i == z || i + z == 7) {            return true;        }        return false;    }}

昨天晚上理解错了,一直Wrong。唉,英文太差了!!加油!!

转载于:https://www.cnblogs.com/xiaoxian1369/archive/2012/09/20/2694650.html

你可能感兴趣的文章
USB2.0学习笔记连载(十八):keil实现寄存器的配置及相关函数讲解(二)
查看>>
SqlServer表名称定义
查看>>
jquery操作select(取值,设置选中)
查看>>
浅谈无线h5开发
查看>>
关于裸婚,没事F5刷豆瓣是不够的!
查看>>
【FJOI2015】金币换位问题
查看>>
HighChar
查看>>
window上安装pymysql
查看>>
控件调用函数
查看>>
activity的启动模式
查看>>
Android主线程、子线程通信(Thread+handler)
查看>>
gitlab配置邮箱
查看>>
Win10桌面奔溃怎么办?雨林木风Win10奔溃解决方法教程
查看>>
mysql Inoodb 内核
查看>>
Redis 基础
查看>>
UITextField的returnkey点击事件
查看>>
特殊字体引用
查看>>
owlcar 用法心得 自定义导航
查看>>
数据结构 学习笔记03——栈与队列
查看>>
DB2 OLAP函数的使用(转)
查看>>