hdu2074
我先求出交叉的gird,然后再一行一行求得。感觉还可以吧。思路比较清晰,开始想的是数是第几行然后从每一行的前后开始控制,好麻烦的感觉,我就先求出来了框架再做就好做多啦!后来PE,突然发现我特殊处理n=1的时候一下子输出了2个\n,改掉以后就好了。
#include <stdio.h>
#include <math.h>
#include <string.h>
#define bug puts("bug!bug!bug!!!!!");
char gird[][];
int main(){
int n,i,j,cnt,g;
int isfirst=;
char gird[][],in,out,oout;
while(~scanf("%d %c %c",&n,&in,&out)){
if(isfirst==) printf("\n");
if(n==){
printf("%c\n",in);
continue;
}
for(i=;i<n;++i)
for(j=;j<n;++j)
gird[i][j]=' ';
if( (n+)/%== ) oout=out;
else oout=in;
for(i=;i<n;++i) gird[i][]=oout;
for(i=,j=;i<n;++i,++j){
if(gird[i-][j-]==out) gird[i][j]=in;
else gird[i][j]=out;
}
//bug;
for(i=n-,j=;i>=;--i,++j){
if(gird[i+][j-]==out) gird[i][j]=in;
else gird[i][j]=out; }/*
for(i=0;i<n;++i){
for(j=0;j<n;++j){
printf("%c",gird[i][j]);
}
printf("\n");
}*/
for(i=;i<n;++i) gird[n-][i]=gird[][i]=oout;
for(i=;i<n-;++i){
cnt=;g=;
for(j=;j<n;++j){
if(gird[i][j]==out||gird[i][j]==in) g++;
if(i==j&&i==(n-)/ ) g++;
if(cnt==){
gird[i][j]=gird[i][j-];
}else if(cnt==||cnt==){
if(gird[i][j-]==out) gird[i][j]=in;
else gird[i][j]=out;
}
cnt=g;
}
}
gird[][]=gird[n-][n-]=gird[][n-]=gird[n-][]=' ';
for(i=;i<n;++i){
for(j=;j<n;++j){
printf("%c",gird[i][j]);
}
printf("\n");
}
isfirst=;
}
return ;
}
hdu2074的更多相关文章
- hdu2074 叠筐
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- OJ题目分类
POJ题目分类 | POJ题目分类 | HDU题目分类 | ZOJ题目分类 | SOJ题目分类 | HOJ题目分类 | FOJ题目分类 | 模拟题: POJ1006 POJ1008 POJ1013 P ...
- hdu2073-2078
hdu2073 数学 #include<stdio.h> #include<math.h> double len(double x){ )*(x+)); } int main( ...
- ACM程序设计选修课——1030: Hungar的时尚球场(水题+耐心)
1030: Hungar的时尚球场 Time Limit: 1 Sec Memory Limit: 64 MB Submit: 14 Solved: 8 [Submit][Status][Web ...
- HDU100题简要题解(2070~2079)
HDU2070 Fibbonacci Number 题目链接 Problem Description Your objective for this question is to develop a ...
随机推荐
- 编译运行第一个Java程序——通过示例学习Java编程3
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=13 在本教程中,我们将了解如何编写.编译和运行Ja ...
- Java编程简介
作者:CHAITANYA SINGH 来源:https://www.koofun.com//pro/kfpostsdetail?kfpostsid=3 JAVA由Sun Microsystems In ...
- hihocoder1822 战舰日常任务
思路: 使用堆即可. 实现: #include <iostream> #include <map> #include <vector> #include <c ...
- IE兼容只读模式
表单input具有只读模式属性,一般来说,一般的浏览器都支持该属性,即readyonly,但IE不支持,只能寻找其兼容性. 第一种:unselectable='on' <input id=&qu ...
- “Debug Assertion” Runtime Error on VS2008 VS2010 winhand.cpp
I'm writing a C++ MFC program on VS2008 and I'm getting this "Debug Assertion Error" when ...
- Git .gitignore 设置为全局global
在操作Git时,我们会将修改的内容$git add . 到Git,Git会提示我们哪些文件都修改了.此时提示中会包括系统自动修改的文件,bin文件等.而我们add到Git时,并不希望将这些文件也一同a ...
- Servlet和JSP之JSTL学习
JSTL JSTL就是JSP标准标签库(JavaServer Pages Standard Tag Library, JSTL)是一个定制标签库的集合,用来解决像遍历Map或集合.条件测试.XML处理 ...
- 数据倾斜是多么痛?spark作业调优秘籍
目录视图 摘要视图 订阅 [观点]物联网与大数据将助推工业应用的崛起,你认同么? CSDN日报20170703——<从高考到程序员——我一直在寻找答案> [直播]探究L ...
- Robotium实践之路源码创建测试项目
1.JDK安装及环境配置 2.Eclipse安装 3.ADT插件安装 4.模拟器安装 5.准备源码 6.引进源码置项目中 .文件 .导入 .选择现有项目置工作空间中 .浏览 .选择项目,选择模拟器版本 ...
- shell脚本,提示用户输入一个用户名,如果存在;显示用户UID和SHELL信息;否则,则显示无此用户;显示完成之后,提示用户再次输入;如果是quit则退出;
[root@localhost wyb]# cat tishiuser.sh #!/bin/bash #提示用户输入一个用户名,如果存在:显示用户UID和SHELL信息:否则, #则显示无此用户:显示 ...