HDU 2074 叠筐
叠筐
Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 10111 Accepted Submission(s): 2548
5 @ W
ABBBBBBBBBA
ABAAAAAAABA
ABABBBBBABA
ABABAAABABA
ABABABABABA
ABABAAABABA
ABABBBBBABA
ABAAAAAAABA
ABBBBBBBBBA
AAAAAAAAA
@@@
@WWW@
@W@W@
@WWW@
@@@
总结: 这道题 水题一道,关键有三点要注意 1:中间的花色问题,我们用m=(n-1)/2;m=m%2来控制中间的花色;2:要留意n==1的情况, WA了好几次,最后仔细检查了一下,才发现少了这种情况;3:WA的问题解决之后有出现了PE问题,在仔细看看题才知道,只是在叠筐与叠筐之间(即两个输出之间)才有空行。
import java.util.*;
import java.io.*; public class T2074 { public static void main(String[] args) {
Scanner sc = new Scanner(new BufferedInputStream(System.in));
int bh=0;
while (sc.hasNext()) {
int n = sc.nextInt();
String s1 = sc.next();
String s2 = sc.next();
// 控制叠筐与叠筐之间(即两个输出之间)的空行
if(bh==0) bh=1;
else{
System.out.println();
}
String str[][] = new String[81][81];
//控制中间的花色
int m = (n - 1) / 2;
if (m % 2 != 0) {
String t;
t = s1;
s1 = s2;
s2 = t;
}
//分两种情况,n==1和n!=1的情况
if (n == 1)
System.out.println(s1);
else {
String st = " ";
for (int i = 0; i < n - 2; i++) {
st += s1;
}
st += " ";
str[0][0] = st;
boolean bb = true;
for (int i = 1; i <= n / 2; i++) {
boolean b = true;
int k = 0;
for (int j = 1; j <= i; j++) {
if (b == true) {
b = false;
str[i][k++] = s1;
} else {
b = true;
str[i][k++] = s2;
}
}
if (bb) {
bb = false;
for (int j = i; j < n - i; j++) {
str[i][k++] = s2;
}
} else {
bb = true;
for (int j = i; j < n - i; j++) {
str[i][k++] = s1;
}
}
for (int j = 1; j <= i; j++) {
if (b == false) {
b = true;
str[i][k++] = s1;
} else {
b = false;
str[i][k++] = s2;
}
}
}
for (int i = 0; i <= n / 2; i++) {
for (int j = 0; j < n; j++) {
if (str[i][j] != null)
System.out.print(str[i][j]);
}
System.out.println();
}
for (int i = n / 2 - 1; i >= 0; i--) {
for (int j = 0; j < n; j++) {
if (str[i][j] != null)
System.out.print(str[i][j]);
}
System.out.println();
}
}
}
}
}
HDU 2074 叠筐的更多相关文章
- hdu 2074 叠筐 好有意思的绘图题
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...
- hdoj 2074 叠筐
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- HDUJ 2074 叠筐 模拟
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submiss ...
- JSU省赛队员选拔赛个人赛1(Coin Change、Fibbonacci Number、Max Num、单词数、无限的路、叠筐)
JSU省赛队员选拔赛个人赛1 一.题目概述: A.Coin Change(暴力求解.动态规划) B.Fibbonacci Number(递推求解) C.Max Num(排序.比较) D.单词数 ...
- hdu 2074 堆放篮 好开心图纸标题
堆放篮 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others) Total Submis ...
- hdu2074 叠筐
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
- hdu 2074
ps:WA了好多次...因为首先是n=1的情况,其次是中心花色和外花色,中心花色也有可能是最外层花色....很无语. 然后就是格式问题咯. 代码 #include "stdio.h" ...
- HDU 2073 叠框
解题报告:一个字符串的题,最恶心的还是格式问题,PE了很多次,要求是每个测试数据的后面都带有一个空行,但是最后一个不能有空行,所以只能把第一组 数据的前面不输出空行,而后面的每一组数据都输出空行,这样 ...
- hdu2074java
叠筐 Time Limit: 1000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)Total Submissi ...
随机推荐
- SQL转换函数to_char/to_date/to_number
日期型->字符型转换函数to_char(d [,fmt]) 函数to_char(d [,fmt])用于将日期型数值转换为字符串(varchar2类型),其中参数d用于指定日期值,fmt用于指定要 ...
- hibernate连接数据库,进行操作的步骤
//初始化 Configuration conf=null; SessionFactory sf=null; Session session=null; Transaction tx=null; tr ...
- XAML 名称范围 (x:) 语言特性
本节介绍为 Windows 运行时实现的 XAML 语言特性的参考信息. 本部分内容 主题 描述 x:Class 属性 配置 XAML 编译,在标记和代码隐藏之间连接分部类.代码分部类在一个独立的代码 ...
- Kinect研究
1. 深度照相机 红外 + 2个摄像头. (1彩色摄像头,1红外发射,1接收) 红外捕捉深度. 2. OpenNI 某编程社区创建. 提供基本深度数据的访问.LGPL协议. 用户跟踪付费. 3. 问题 ...
- alter database open resetlogs
使用resetlogs选项,会把当前的日志序号(log sequence number)重设为1,并抛弃所有日志信息.在以下条件时需要使用resetlogs选项: 在不完全恢复(介质恢复): 使用备份 ...
- android图形基础知识
Android核心分析(23)-----Andoird GDI之基本原理及其总体框架 2010-06-13 22:49 18223人阅读 评论(18) 收藏 举报 AndroidGDI基本框架 在An ...
- 表单控件之select
一.表单控件之表单 1.依次获取表单里的所有控件: for (i = 0; i < document.getElementById("formName").length; i ...
- phpword的几个坑
下载地址http://phpword.codeplex.com/ 开发目的:有现成的word模板 替换模板中的字段 1.中文乱码问题,如果你文件本身就是utf8...把Phpword里的模板类的一行转 ...
- C#实现窗体间的通信
以下将窗体间的几种通信实现方式做一下罗列:首先新建一个窗体Form1,在其中放置一个Textbox.Button控件.再新建一个窗体Form2,其上放置一个Button控件.具体代码示例如下: //F ...
- strcpy and memcpy
1. Inconsist length. char a3[2]; char *a = "Itis " strcpy(a3, a); It is wrong. a3 will b ...