UVA253 骰子涂色 Cube painting 题解

题意翻译

输入两个骰子,判断二者是否等价。每个骰子用6个字母表示。如第一幅图所示。

例如rbgggr和rggbgr分别表示下面两幅图的两个骰子。两者是等价的,因为图1中所示的骰子沿着竖直轴旋转90°之后就可以得到图2所示的骰子。

输入格式:

12个字母,前6个字母是第一个骰子的六个面;后6个字母是第二个骰子的六个面。

输出格式:

一个布尔值。若两个骰子是等价的,则输出TRUE;反之输出FALSE。

输入输出样例

输入 #1

rbgggrrggbgr
rrrbbbrrbbbr
rbgrbgrrrrrg

输出 #1

TRUE
FALSE
FALSE

思路

思路1:判断两个骰子的3组面是否能一一对应.这个思路可以得到AC代码但是不符合题目要求,如rgbgrbgrgrbb.

思路2:暴力模拟一遍骰子所有旋转后的可能.

代码

思路1

#include <stdio.h>
#include <string.h>
#define maxn 15
struct cube {
	char A;
	char B;
};
cube left[10];
cube right[10];
char str[maxn];
int main() {
	#ifdef LOCAL
		freopen("253.out", "w+", stdout);
	#end
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值