URAL 1221 Malevich Strikes Back! (暴力枚举)
来源:互联网 发布:南京软件谷创智大厦 编辑:程序博客网 时间:2024/05/10 06:58
#include <stdio.h>#define MAX_SIZE 101#define FABS(x) ( (x) > 0 ? (x) : -(x) )int paper[MAX_SIZE][MAX_SIZE];int isFigure(int half, int centralRow, int centralColumn){int row, column, bound;for (row = centralRow - half; row <= centralRow + half; row++){//边界先减后增的变换用到了绝对值bound = centralColumn - half + FABS(row - centralRow);for (column = centralColumn - half; column < bound; column++)if (paper[row][column] == 0)return 0;bound = centralColumn + half - FABS(row - centralRow);for (column < centralColumn - half + FABS(row - centralRow); column <= bound; column++)if (paper[row][column] == 1)return 0;for (column = centralColumn + half; column > bound; column--)if (paper[row][column] == 0)return 0;}return 1;}int main(){freopen("input.txt", "r", stdin);int paperSize;while (scanf("%d", &paperSize) != EOF && paperSize != 0){int row, column;for (row = 1; row <= paperSize; row++)for (column = 1; column <= paperSize; column++)scanf("%d", &paper[row][column]);//枚举figure的size和中心位置,枚举的思想是多么的重要啊int found = 0;int figureSize, half, bound, centralRow, centralColumn;for (figureSize = paperSize & 1 ? paperSize : paperSize - 1; figureSize >= 3; figureSize -= 2){half = figureSize >> 1;bound = paperSize - half;for (centralRow = half; centralRow <= bound; centralRow++)for (centralColumn = half; centralColumn <= bound; centralColumn++)if (isFigure(half, centralRow, centralColumn)){found = 1;goto isFound;}}isFound:if (found)printf("%d\n", figureSize);elseprintf("No solution\n");}return 0;}
0 0
- URAL 1221 Malevich Strikes Back! (暴力枚举)
- URAL 1221. Malevich Strikes Back! 枚举 暴力
- Malevich Strikes Back!
- URAL 1221 Malevich Strikes Back! (DP动态规划 O(n^2) )
- URAL 1646 Godzilla Strikes Back!
- Ural 1520 Empire Strikes Back(模拟退火)
- The Aqualizer Strikes Back!
- XST Strikes Back
- Kalevich Strikes Back
- [Voronoi图 || 模拟退火 特判 || 圆的离散化] Ural 1520 Empire strikes back
- SGU 319: Kalevich Strikes Back
- sgu-319-Kalevich Strikes Back-线段树
- CF 300E Empire Strikes Back
- sgu-234 Black-White King Strikes Back
- CodeForces 300E Empire Strikes Back
- URAL 1495. One-two, One-two 2(暴力枚举)
- URAL 1132 Square Root 暴力枚举,二次剩余.
- SGU 319 Kalevich Strikes Back(线段树+扫描线)
- python学习-文本数据分析1(主题提取+词向量化)
- shell自学笔记2
- hadoop运行到mapreduce.job: Running job后停止运行
- JavaScript高级程序设计之客户端检测之能力检测第9.1讲笔记
- MySql命令大全
- URAL 1221 Malevich Strikes Back! (暴力枚举)
- 欢迎使用CSDN-markdown编辑器
- 软件功能测试工具-UFT/QTP
- 《机器学习实战》笔记之十二——使用FP-Growth算法来高效发现频繁项集
- 1079 回家 题解
- 源码解析:3D推拉门式滑动菜单
- python学习-文本数据分析2(文本分类)
- 【模板】高精度
- SVM-支持向量机算法概述