草爷要的雷

Problem Description

扫雷一直是风靡实验室的重要娱乐游戏,在赛前赛后、刷题疲惫的时候,扫一局雷经常可以让队员们感受到身心的振奋,毕竟,劳逸结合刷题,防猝死才是硬道理。
但是我的运气总是太差,关键时刻二选一总是会点到雷,果然扫雷也是看脸的游戏。被炸得神志不清的时候,我已经完全没有办法区分哪些格子是雷了,只能随机点格子了,所以请你们帮我算一下我点下去被雷炸的概率,谢啦~
当然,在给出的扫雷图中,我点开了一个数字格以及它周围的若干格(周围是指与那一个格子共享一条边或一个顶点的格子,周围的格子没有被全部点开),并且我接下来一步只会点这个数字周围没有点开的格子;

扫雷部分规则:
每个格子点开只可能是数字、空格子、雷。
标有数字的格子上,数字表示它周围的格子中一共有的雷总数。

Input

多组输入(<=1000),请读到文件结尾;
每组数据第一行是两个整数n和m(2<=n,m<=10),表示扫雷图的行数和列数;
接下来n行,每行m个字符表示这个扫雷图的每一行。
图中'*'表示没有点开的格子,'.'表示数字周围且已经点开的格子(代表数字或空格子),以及一个数字(1~8)。
保证数字只有一个,它周围剩余的没有点开的格子数大于等于数字的值(即保证输入扫雷图的合法),'.'只出现在数字周围。

Output

对于每组数据输出一个最简分数,表示下一步点开数字格子周围的某个还未被点开的格子时,该格子是雷的概率(若概率为1,输出1/1)。
每组数据占一行

Sample Input

3 3
**.
.3.
***
4 5
*****
***.*
**.2.
**...

Sample Output

3/5
1/1

Author

奚政
还是一道比较水的题目,我这里是用一个二维数组做一个棋盘,二维字符做棋子,这样清空数组就简单一点
#include<stdio.h>
//#include<bits/stdc++.h>
#include<string.h>
#include<iostream>
#include<math.h>
#include<sstream>
#include<set>
#include<queue>
#include<map>
#include<vector>
#include<algorithm>
#include<limits.h>
#define inf 0x3fffffff
#define INF 0x3f3f3f3f
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
#define ULL unsigned long long
using namespace std;
char s[][];
int a[][];
int i,j;
int n,m;
int main ()
{
int x,y;
int I,J;
while(cin>>n>>m)
{
memset(a,,sizeof(a));
int sum=;
int ans;
for(i=;i<=n;i++)
{
for(j=;j<=m;j++)
{
cin>>s[i][j];
if(s[i][j]=='*')
{
a[i][j]=;
}
if(s[i][j]=='.')
{
a[i][j]=;
}
else if(s[i][j]>=''&&s[i][j]<='')
{
a[i][j]=;
ans=s[i][j]-'';
x=i;
y=j;
}
}
}
for(I=x-;I<=x+;I++)
{
for(J=y-;J<=y+;J++)
{
if(a[I][J]==)
{
sum++;
}
// cout<<a[I][J];
}
// cout<<endl;
}
// cout<<sum<<endl;
cout<<ans/__gcd(sum,ans)<<"/"<<sum/__gcd(sum,ans)<<endl;
}
return ;
}

2015苏州大学ACM-ICPC集训队选拔赛(2)1002的更多相关文章

  1. hihocoder1257(构造)(2015北京ACM/ICPC)

    题意: 给你n条蛇,a[i]的长度为i,要求组成一个矩形.奇数蛇可折叠奇数次,偶数蛇折叠偶数次,然后按蛇的次序输出 (即一条蛇的输出只能是一个方向的) 2 3 1 2 1 3 2 3 1 1 2 1 ...

  2. 2015 ACM / ICPC 亚洲区域赛总结(长春站&北京站)

    队名:Unlimited Code Works(无尽编码)  队员:Wu.Wang.Zhou 先说一下队伍:Wu是大三学长:Wang高中noip省一:我最渣,去年来大学开始学的a+b,参加今年区域赛之 ...

  3. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 G. Garden Gathering

    Problem G. Garden Gathering Input file: standard input Output file: standard output Time limit: 3 se ...

  4. ACM ICPC 2015 Moscow Subregional Russia, Moscow, Dolgoprudny, October, 18, 2015 D. Delay Time

    Problem D. Delay Time Input file: standard input Output file: standard output Time limit: 1 second M ...

  5. hdu 5444 Elven Postman(二叉树)——2015 ACM/ICPC Asia Regional Changchun Online

    Problem Description Elves are very peculiar creatures. As we all know, they can live for a very long ...

  6. (并查集)Travel -- hdu -- 5441(2015 ACM/ICPC Asia Regional Changchun Online )

    http://acm.hdu.edu.cn/showproblem.php?pid=5441 Travel Time Limit: 1500/1000 MS (Java/Others)    Memo ...

  7. (二叉树)Elven Postman -- HDU -- 54444(2015 ACM/ICPC Asia Regional Changchun Online)

    http://acm.hdu.edu.cn/showproblem.php?pid=5444 Elven Postman Time Limit: 1500/1000 MS (Java/Others)  ...

  8. 2015 ACM/ICPC Asia Regional Changchun Online HDU 5444 Elven Postman【二叉排序树的建树和遍历查找】

    Elven Postman Time Limit: 1500/1000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others)T ...

  9. 2016 ACM/ICPC Asia Regional Dalian Online 1002/HDU 5869

    Different GCD Subarray Query Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K ( ...

  10. 【转】ACM/ICPC生涯总结暨退役宣言—alpc55

    转自:http://hi.baidu.com/accplaystation/item/ca4c2ec565fa0b7fced4f811 ACM/ICPC生涯总结暨退役宣言—alpc55 前言 早就该写 ...

随机推荐

  1. ArcEngine中多边形内外环的处理(转)

    ArcEngine中多边形内外环的处理 原创 2012年09月06日 22:49:11 标签: object / null / 数据库 3462 Polylgon对象是由一个或多个Ring对象的有序集 ...

  2. 第一次WM_PAINT事件执行前显示白色框 的解决办法

    界面显示前,总是会显示白色或白加黑的窗体, 开始以为是图片加载慢的原因,后来发现这个框是在第一次WM_PAINT执行前显示的. 解决办法很简单,在CreateWindow的时候,加上WS_POPUP样 ...

  3. Mysql GROUP_CONCAT 使用注意事项

    GROUP_CONCAT 函数返回一个字符串结果,该结果由分组中的值连接组合而成,常和 GROUP BY 连用. 如果需要自定义分隔符可以使用 SEPARATOR. 示例: SELECT GROUP_ ...

  4. 612D The Union of k-Segments

    传送门 题目大意 给定n个区间,问你被覆盖至少k次的区间(两端连续区间可以合并)最少有多少个,并输出. 分析 大水题呀QwQ,只需要将每个点的位置及它是左端点还是右端点这两个信息存起来然后进行一些简单 ...

  5. 【Android小技巧】android 按键如何能自动触发点击

    使用button.performClick();方法 EditText 中hint的字体跟 textSize的字体大小一样大

  6. TensorFlow创建变量

    1 使用tf.Variable函数创建变量 tf.Variable(initial_value=None,trainable=True,collections=None,validate_shape= ...

  7. Delphi 关键字详解

    Delphi 关键字详解[整理于 "橙子" 的帖子] absolute //它使得你能够创建一个新变量, 并且该变量的起始地址与另一个变量相同. var   Str: ];   S ...

  8. ubuntu - 14.04,安装Eclipse(开源开发工具)

    一,安装JDK:Eclipse必须有JDK才能运行,所以首先我们确定系统是否已经安装了JDK,我们在shell里面输入:“java -version”,如果已经安装了,就会打印出来当前JDK版本信息, ...

  9. WC2019 冬眠记

    Day1 做高铁来广州 晚上开幕式,亮点在CCF的日常讲话.dzd有事换wh讲. 我们WC比赛的人数是最多的,性价比是最高的 然后掌声雷动 相信大家鼓掌是同意我的话 再次掌声雷动(雾 Day2-Day ...

  10. python logging日志库

    项目中使用的日志库是使用python官方库logging封装的,但是居然一直么有设置日志自动滚动,经常会受到告警说哪台机器磁盘空间又满,清理一下,于是研究一下,解决这个问题. 参考:https://d ...