codeforces gym 100825 D Rings
这题果然就是个暴力题....
看每个T的四个方向,有'.',或者在边界上就填1
不然就填四个方向上最小的那个数再加1
然而写wa了几发,有点蠢...
#include <bits/stdc++.h> using namespace std; char a[][];
int vis[][]; int dir[][] = {,,,-,,,-,};
int n,m; bool ok(int x,int y) {
if(x < || y < || x > n || y > m) {
return false;
}
return true;
}
int main() { cin>>n>>m;
memset(vis,,sizeof(vis));
for(int i = ; i <= n; i++) {
scanf("%s",a[i] + ); }
for(int i = ; i <= ; i++) {
for(int j = ; j <= ; j++) {
vis[i][j] = ;
}
} for(int k = ; k <= ; k++) {
for(int i = ; i <= n; i++) {
for(int j = ; j <= m; j++) {
if(a[i][j] == 'T') {
for(int x = ; x < ; x++) {
int nx = i + dir[x][];
int ny = j + dir[x][];
if(!ok(nx,ny)) {
/*if(i == 2 && j == 17) {
cout<<vis[nx][ny]<<endl;
}*/
vis[i][j] = ;
break;
}
if(ok(nx,ny) && a[nx][ny] == '.') { vis[i][j] = ;
break; }
else if(ok(nx,ny) && vis[nx][ny] != ) { vis[i][j] = min(vis[i][j],vis[nx][ny] + );
}
}
}
}
} } int cnt = ;
for(int i = ; i <= n; i++) {
for(int j = ; j <= m; j++) {
if(vis[i][j] != ) {
cnt = max(cnt,vis[i][j]);
}
}
} //cout<<cnt<<endl;
if(cnt < ) {
for(int i = ; i <= n; i++) {
for(int j = ; j <= m; j++) {
//cout<<vis[i][j]<<' ';
if(vis[i][j] == ) {
printf("..");
}
else {
printf(".");
printf("%d",vis[i][j]);
} }
printf("\n");
}
}
else {
for(int i = ; i <= n; i++) {
for(int j = ; j <= m; j++) {
if(vis[i][j] == ) {
printf("...");
}
else if(vis[i][j] < ) {
printf("..");
printf("%d",vis[i][j]);
}
else {
printf(".");
printf("%d",vis[i][j]);
} }
printf("\n");
}
} }
codeforces gym 100825 D Rings的更多相关文章
- 【宽搜】ECNA 2015 D Rings (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: 给你一张N*N(N<=100)的图表示一个树桩,'T'为年轮,'.'为空,求每个'T'属于哪一圈年轮,空 ...
- 【最大流】ECNA 2015 F Transportation Delegation (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: N(N<=600)个点,每个点有个名字Si,R(R<=200)个生产商在R个点上,F(F<= ...
- 【宽搜】ECNA 2015 E Squawk Virus (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: N个点M条无向边,(N<=100,M<=N(N-1)/2),起始感染源S,时间T(T<10) ...
- 【模拟】ECNA 2015 I What's on the Grille? (Codeforces GYM 100825)
题目链接: http://codeforces.com/gym/100825 题目大意: 栅栏密码.给定N(N<=10),密钥为一个N*N的矩阵,'.'代表空格可以看到,'X'代表被遮挡,还有密 ...
- Codeforces Gym 101252D&&floyd判圈算法学习笔记
一句话题意:x0=1,xi+1=(Axi+xi%B)%C,如果x序列中存在最早的两个相同的元素,输出第二次出现的位置,若在2e7内无解则输出-1. 题解:都不到100天就AFO了才来学这floyd判圈 ...
- Codeforces Gym 101190M Mole Tunnels - 费用流
题目传送门 传送门 题目大意 $m$只鼹鼠有$n$个巢穴,$n - 1$条长度为$1$的通道将它们连通且第$i(i > 1)$个巢穴与第$\left\lfloor \frac{i}{2}\rig ...
- Codeforces Gym 101623A - 动态规划
题目传送门 传送门 题目大意 给定一个长度为$n$的序列,要求划分成最少的段数,然后将这些段排序使得新序列单调不减. 考虑将相邻的相等的数缩成一个数. 假设没有分成了$n$段,考虑最少能够减少多少划分 ...
- 【Codeforces Gym 100725K】Key Insertion
Codeforces Gym 100725K 题意:给定一个初始全0的序列,然后给\(n\)个查询,每一次调用\(Insert(L_i,i)\),其中\(Insert(L,K)\)表示在第L位插入K, ...
- Codeforces gym 101343 J.Husam and the Broken Present 2【状压dp】
2017 JUST Programming Contest 2.0 题目链接:Codeforces gym 101343 J.Husam and the Broken Present 2 J. Hu ...
随机推荐
- 201621123080《Java程序设计》第1周学习总结
作业01-Java基本概念 1. 本周学习总结 关键词: JDK.JAVA.编程.基础语法 概念之间的关系: JDK是JAVA的开发工具,学习JAVA的主要方法是大量编程,语法是JAVA的基础 2. ...
- How to Install Zabbix Server on Centos6.7
Prerequisite Environment First you must use your Subscription Manager to enable SCL: [root@fileserve ...
- 使用kickstart + pxe 部署无人值守安装
1.作为中小公司的运维,经常会遇到一些机械式的重复工作,例如:有时公司同时上线几十甚至上百台服务器,而且需要我们在短时间内完成系统安装. 常规的安装系统方法: 光盘安装系统:一个服务器DVD内置光驱百 ...
- 《linux设备驱动开发详解》笔记——10中断与时钟
10.1 中断与定时器 中断一般有如下类型: 内部中断和外部中断:内部中断来自CPU,例如软件中断指令.溢出.除0错误等:外部中断有外部设备触发 可屏蔽中断和不可屏蔽中断 向量中断和非向量中断,ARM ...
- Python9-事件及队列-day37
信号量 from multiprocessing import Process from multiprocessing import Semaphore import time import ran ...
- [Cake] 2. dotnet 全局工具 cake
在上篇博客[Cake] 1. CI中的Cake中介绍了如何在CI中利用Cake来保持与CI/CD环境的解耦. 1. 简化cake的安装 当时dotnet 2.1还未正式发布,dotnet 还没有工具的 ...
- 九度oj 题目1366:栈的压入、弹出序列
题目描述: 输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否为该栈的弹出顺序.假设压入栈的所有数字均不相等.例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈 ...
- POJ 2355 Railway tickets
Railway tickets Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 2472 Accepted: 865 De ...
- SpriteKit-(SKNode)
1.初始化 + (instancetype)node; + (nullable instancetype)nodeWithFileNamed:(NSString*)filename; 2.返回边界边框 ...
- iOS学习笔记36-Masonry自动布局
一.Masonry介绍 之前我们在屏幕适配的章节中学习过AutoLayout的使用,但那都是在可视化界面上进行添加约束完成的,我们很多时候都需要在代码中使用AutoLayout约束,苹果也为我们提供了 ...