前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布

UVA253

作者头像
dejavu1zz
发布2020-10-23 15:13:53
4260
发布2020-10-23 15:13:53
举报
文章被收录于专栏:奇妙的算法世界

题意描述

输入两个骰子,判断骰子是否等价。骰子可以沿着垂直轴90度旋转

思路

只用固定一组边,然后再遍历其他两组,看是否相同即可。ch[i]和ch[5-i]是同一组边,这一点是难点,我没有想出来。想出来以后就很容易实现了

AC代码

代码语言:javascript
复制
#include<iostream>
#include<cmath>
#include<algorithm>
#include<cstring>
int main(){
	#ifdef LOCAL
		freopen("data.in","r",stdin);
		freopen("data.out","w",stdout);
	#endif
	char buf[6],ch[6];
	while(scanf("%c",&buf[0])!=EOF){
		char buf_copy[4],ch_copy[4];
		int flag=0,pos;
		for(int i=1;i<6;i++){
			buf[i]=getchar();
		}
		for(int i=0;i<6;i++){
			ch[i]=getchar();
		}
		getchar();
		for(int i=0;i<3;i++){
			for(int j=0;j<6;j++){
				flag=0;
				if(buf[i]==ch[j]&&buf[5-i]==ch[5-j]){
					flag=1;
					ch[j]=ch[5-j]='0';
					break;
				}
			}
			if(!flag) break;
		}
		if(flag) printf("TRUE\n");
		else printf("FALSE\n");
	}
 	return 0;
 }

总结

这道题刚开始对题意理解的有偏差,想到的是只能从一个方向旋转,没有考虑到多个方向旋转的情况,以后一定要注意

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020/02/13 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 题意描述
  • 思路
  • AC代码
  • 总结
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档