HDU6077 Time To Get Up 暴力

52 篇文章 0 订阅
39 篇文章 0 订阅

题目链接:HDU6067

题目大意:把字符串转换成相应的数字

思路:暴力,先把每个数字的表示方式画出来,然后找规律,我写的比较暴力,直接判定。

AC代码

/*
2017年8月3日23:28:25
HDU6077 暴力直接判断
WA了2次:把6的字符表示画错了 = = 
AC 
*/ 
#include<iostream>
#include<stdio.h>
using namespace std;
const int N=7+5;
const int M=21+5;
char map[N][M];
int T;

int main(){
	scanf("%d",&T);
	while(T--){
		for(int i=0;i<7;i++){
			for(int j=0;j<21;j++){
				cin>>map[i][j];
			}
		}
		int d1,d2,d3,d4;
		
		//d1 //************************
				if(map[0][1]=='.'&&map[0][2]=='.'){
					if(map[1][0]=='X') d1=4;
					else d1=1; 
				}
				else if(map[1][0]=='.'&&map[4][0]=='.'){
					if(map[3][1]=='X') d1=3;
					else d1=7;
				}
				else if(map[3][1]=='.'&&map[3][2]=='.'){
					d1=0;
				}
				else if(map[4][3]=='.'&&map[5][3]=='.'){
					d1=2;
				}
				else if(map[1][3]=='.'&&map[2][3]=='.'){
					if(map[4][0]=='.') d1=5;
					else d1=6;
				}
				else if(map[4][0]=='.'&&map[5][0]=='.'){
					d1=9;
				}
				else d1=8;
		//d2//************************
				if(map[0][1+5]=='.'&&map[0][2+5]=='.'){
					if(map[1][0+5]=='X') d2=4;
					else d2=1; 
				}
				else if(map[1][0+5]=='.'&&map[4][0+5]=='.'){
					if(map[3][1+5]=='X') d2=3;
					else d2=7;
				}
				else if(map[3][1+5]=='.'&&map[3][2+5]=='.'){
					d2=0;
				}
				else if(map[4][3+5]=='.'&&map[5][3+5]=='.'){
					d2=2;
				}
				else if(map[1][3+5]=='.'&&map[2][3+5]=='.'){
					if(map[4][0+5]=='.') d2=5;
					else d2=6;
				}
				else if(map[4][0+5]=='.'&&map[5][0+5]=='.'){
					d2=9;
				}
				else d2=8;
		//d3//************************
				if(map[0][1+12]=='.'&&map[0][2+12]=='.'){
					if(map[1][0+12]=='X') d3=4;
					else d3=1; 
				}
				else if(map[1][0+12]=='.'&&map[4][0+12]=='.'){
					if(map[3][1+12]=='X') d3=3;
					else d3=7;
				}
				else if(map[3][1+12]=='.'&&map[3][2+12]=='.'){
					d3=0;
				}
				else if(map[4][3+12]=='.'&&map[5][3+12]=='.'){
					d3=2;
				}
				else if(map[1][3+12]=='.'&&map[2][3+12]=='.'){
					if(map[4][0+12]=='.') d3=5;
					else d3=6;
				}
				else if(map[4][0+12]=='.'&&map[5][0+12]=='.'){
					d3=9;
				}
				else d3=8;
				
		//d4  //************************
				if(map[0][1+17]=='.'&&map[0][2+17]=='.'){
					if(map[1][0+17]=='X') d4=4;
					else d4=1; 
				}
				else if(map[1][0+17]=='.'&&map[4][0+17]=='.'){
					if(map[3][1+17]=='X') d4=3;
					else d4=7;
				}
				else if(map[3][1+17]=='.'&&map[3][2+17]=='.'){
					d4=0;
				}
				else if(map[4][3+17]=='.'&&map[5][3+17]=='.'){
					d4=2;
				}
				else if(map[1][3+17]=='.'&&map[2][3+17]=='.'){
					if(map[4][0+17]=='.') d4=5;
					else d4=6;
				}
				else if(map[4][0+17]=='.'&&map[5][0+17]=='.'){
					d4=9;
				}
				else d4=8;
				//************************
		printf("%d%d:%d%d\n",d1,d2,d3,d4);
	}
	return 0;
} 
 


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值