NJU 1010 Air
思路:把那张图打表(吐血...),然后就按照规则输出就行。
AC代码
#include <cstdio>
#include <cmath>
#include <cctype>
#include <algorithm>
#include <cstring>
#include <utility>
#include <string>
#include <iostream>
#include <map>
#include <set>
#include <vector>
#include <queue>
#include <stack>
using namespace std;
#pragma comment(linker, "/STACK:1024000000,1024000000")
#define eps 1e-10
#define inf 0x3f3f3f3f
#define PI pair<int, int>
typedef long long LL;
const int maxn = 50 + 5;
string a[maxn];
void init() {
for(int i = 0; i <= 35; ++i) {
if(i == 0) a[i] = ".-";
else if(i == 1) a[i] = "-...";
else if(i == 2) a[i] = "-.-.";
else if(i == 3) a[i] = "-..";
else if(i == 4) a[i] = ".";
else if(i == 5) a[i] = "..-.";
else if(i == 6) a[i] = "--.";
else if(i == 7) a[i] = "....";
else if(i == 8) a[i] = "..";
else if(i == 9) a[i] = ".---";
else if(i == 10) a[i] = "-.-";
else if(i == 11) a[i] = ".-..";
else if(i == 12) a[i] = "--";
else if(i == 13) a[i] = "-.";
else if(i == 14) a[i] = "---";
else if(i == 15) a[i] = ".--.";
else if(i == 16) a[i] = "--.-";
else if(i == 17) a[i] = ".-.";
else if(i == 18) a[i] = "...";
else if(i == 19) a[i] = "-";
else if(i == 20) a[i] = "..-";
else if(i == 21) a[i] = "...-";
else if(i == 22) a[i] = ".--";
else if(i == 23) a[i] = "-..-";
else if(i == 24) a[i] = "-.--";
else if(i == 25) a[i] = "--..";
else if(i == 26) a[i] = "-----";
else if(i == 27) a[i] = ".----";
else if(i == 28) a[i] = "..---";
else if(i == 29) a[i] = "...--";
else if(i == 30) a[i] = "....-";
else if(i == 31) a[i] = ".....";
else if(i == 32) a[i] = "-....";
else if(i == 33) a[i] = "--...";
else if(i == 34) a[i] = "---..";
else if(i == 35) a[i] = "----.";
}
for(int i = 0; i <= 35; ++i) {
string s = a[i];
a[i].clear();
for(int j = 0; j < s.size(); ++j) {
if(s[j] == '.') a[i].push_back('=');
else for(int k = 0; k < 3; ++k) a[i].push_back('=');
if(j < s.size()-1) a[i].push_back('.');
}
}
}
int main() {
init();
int T, n, kase = 1;
char s[25];
scanf("%d", &T);
while(T--) {
printf("Case #%d: ", kase++);
scanf("%d", &n);
for(int i = 0; i < n; ++i) {
scanf("%s", s);
for(int j = 0; j < strlen(s); ++j) {
s[j] = toupper(s[j]);
if(s[j] >= 'A' && s[j] <= 'Z') {
cout << a[s[j]-'A'];
}
else cout << a[s[j]-'0'+26];
if(j != strlen(s)-1) printf("...");
}
if(i != n-1) printf(".......");
}
printf("\n");
}
return 0;
}
如有不当之处欢迎指出!
NJU 1010 Air的更多相关文章
- poj——1422 Air Raid
Air Raid Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 8577 Accepted: 5127 Descript ...
- HDU 4756 Install Air Conditioning(次小生成树)
题目大意:给你n个点然后让你求出去掉一条边之后所形成的最小生成树. 比較基础的次小生成树吧. ..先prime一遍求出最小生成树.在dfs求出次小生成树. Install Air Conditioni ...
- BZOJ 1010: [HNOI2008]玩具装箱toy [DP 斜率优化]
1010: [HNOI2008]玩具装箱toy Time Limit: 1 Sec Memory Limit: 162 MBSubmit: 9812 Solved: 3978[Submit][St ...
- Entity Framework 6 Recipes 2nd Edition(10-10)译 - > 为TPH继承的插入、更新、删除操作映射到存储过程
10-10. 为TPH继承的插入.更新.删除操作映射到存储过程 问题 TPH继承模型,想把它的插入.修改.删除操作映射到存储过程 Solution 假设数据库有一个描述不同种类的产品表(Product ...
- ERROR 1010 (HY000): Error dropping database (can't rmdir './test/', errno: 17)
在删除数据库的时候报标题所示错误 mysql> drop database test; ERROR (HY000): Error dropping database (can't rmdir ' ...
- 解决adobe air sdk打包 apk后自动在包名前面加上air. (有个点)前缀的问题
早就找到了这个方法,但是一直忙没心思写博客. 默认情况下,所有 AIR Android 应用程序的包名称都带 air 前缀.若不想使用此默认行为,可将计算机环境变量 AIR_NOANDROIDFLAI ...
- adobe air类app 接入腾讯开放平台移动游戏使用带tencent包名前缀的问题
作者:Panda Fang 出处:http://www.cnblogs.com/lonkiss/p/4209159.html 原创文章,转载请注明作者和出处,未经允许不可用于商业营利活动 ------ ...
- Adobe AIR 中为不同尺寸和分辨率屏幕适配
在 Adobe AIR 中为不同屏幕尺寸的多种设备提供支持 http://www.adobe.com/cn/devnet/air/articles/multiple-screen-sizes.html ...
- Ural 1010. Discrete Function
1010. Discrete Function Time limit: 1.0 secondMemory limit: 64 MB There is a discrete function. It i ...
随机推荐
- SQL SERVER 表最小行的一个纠结问题
昨天一个同事突然问我,说他在SQL 2000数据库创建如下表的时候,突然碰到了下面一条警告信息.SQL脚本和警告信息如下: IF OBJECT_ID(N'Log') IS NULL BEGINCRE ...
- Protobuf 从入门到实战
简介 从第一次接触Protobuf到实际使用已经有半年多,刚开始可能被它的名字所唬住,其实就它是一种轻便高效的数据格式,平台无关.语言无关.可扩展,可用于通讯协议和数据存储等领域. 优点 平台无关,语 ...
- 一个最简单的cell按钮点击回调
在cell.h定义 @property(nonatomic,strong)void(^pushType)(NSInteger); 在cell.m按钮点击时 _pushType(1):(举例) ...
- raid制作(转载)
Dell r710服务器,有4块450G硬盘,默认做的RAID5.我们的目的是取其中3块硬盘做RAID5,留一块硬盘做热备. 在这里,我具体解释一下 ①4块硬盘做成RAID5 ②3块硬盘做RAID5, ...
- 使用mybatis从mysql里进行模糊查询的编码问题
关于这个问题,记录下我的解决方法,希望对有同样困惑的朋友,有所帮助. 问题描述: 我在做mybatis从mysql里模糊查询时,如果模糊的关键词是字母的话,可以查出来.如果模糊的关键词是汉字的话,查不 ...
- aop难点解析。
静态织入和动态织入的区别? 需求示例:假设有一个包,一个包当中有一个方法,我们想在这个方法的前后,加上环绕. 那么怎么加呢? 把知道的都说一遍. 1.建立JsonService 2.建立JSONASP ...
- ABP示例程序-使用AngularJs,ASP.NET MVC,Web API和EntityFramework创建N层的单页面Web应用
本片文章翻译自ABP在CodeProject上的一个简单示例程序,网站上的程序是用ABP之前的版本创建的,模板创建界面及工程文档有所改变,本文基于最新的模板创建.通过这个简单的示例可以对ABP有个更深 ...
- python3 爬取百合网的女人们和男人们
学Python也有段时间了,目前学到了Python的类.个人感觉Python的类不应称之为类,而应称之为数据类型,只是数据类型而已!只是数据类型而已!只是数据类型而已!重要的事情说三篇. 据书上说一个 ...
- RHEL7.2安装
先在系统启动的时候按下Del键(有些系统是F2键)进入BIOS,设置从光盘启动. 系统只有2个USB口时,1个要接光驱,另外1个口不能同时接键盘和鼠标,可以接1个USB集线器,键盘和鼠标同时接入到集线 ...
- HDU [P2819] swap
二分图行列匹配+输出路径 经典题,当且仅当一行匹配一列的时候,符合题意. 本题的难点在于如何输出路径,我们发现这个移动的过程就是将所有匹配选择排序,在选择排序时输出路径即可 #include < ...