UVa 10878 Decode the tape-程序员宅基地

技术标签: UVa  uva  string  ascii  二进制  

题目很简单,代码也很短。第一遍做的时候,我居然二乎乎的把input里面的小框框忽略掉了,大哭,所以WA了一次。

每一行代表一个二进制的ASCII码,'o'代表1,空格代表0,中间的小黑点忽略。

我直接把一行字符串全读进去,如果字符串以下划线开头说明输入结束(字符串的处理从第2行开始)。

然后从左到右一个字符一个字符的判断,是空格直接*2,是'o'先*2后加1,最后算出的就是对应的ASCII值。

Problem A
Decode the tape
Time Limit: 1 second

"Machines take me by surprise with great frequency."

Alan Turing

Your boss has just unearthed a roll of old computer tapes. The tapes have holes in them and might contain some sort of useful information. It falls to you to figure out what is written on them.

Input
The input will contain one tape.

Output
Output the message that is written on the tape.

Sample Input Sample Output
___________
| o   .  o|
|  o  .   |
| ooo .  o|
| ooo .o o|
| oo o.  o|
| oo  . oo|
| oo o. oo|
|  o  .   |
| oo  . o |
| ooo . o |
| oo o.ooo|
| ooo .ooo|
| oo o.oo |
|  o  .   |
| oo  .oo |
| oo o.ooo|
| oooo.   |
|  o  .   |
| oo o. o |
| ooo .o o|
| oo o.o o|
| ooo .   |
| ooo . oo|
|  o  .   |
| oo o.ooo|
| ooo .oo |
| oo  .o o|
| ooo . o |
|  o  .   |
| ooo .o  |
| oo o.   |
| oo  .o o|
|  o  .   |
| oo o.o  |
| oo  .  o|
| oooo. o |
| oooo.  o|
|  o  .   |
| oo  .o  |
| oo o.ooo|
| oo  .ooo|
|  o o.oo |
|    o. o |
___________
A quick brown fox jumps over the lazy dog.


Problemsetter: Igor Naverniouk
Special thanks: BSD games ppt.


//#define LOCAL
#include <iostream>
#include <cstring>
#include <cstdio>
using namespace std;

int main(void)
{
	#ifdef LOCAL
		freopen("10878in.txt", "r", stdin);
	#endif
	int i;
	char str[15], ascii;
	gets(str);
	while(gets(str) && str[0] != '_')
	{
		ascii = 0;
		for(i = 0; i < strlen(str); ++i)
		{
			if(str[i] == ' ')
				ascii *= 2;
			if(str[i] == 'o')
			{
				ascii *= 2;
				ascii += 1;
			}
		}
		printf("%c", ascii);
	}
	return 0;
}


版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u014491224/article/details/28247059

智能推荐

latex排版笔记_winedt 11-程序员宅基地

文章浏览阅读459次。latex写的格式不需要自己调,和编程差不多。关于latex和winedt的关系请参考百度:winedt 定义:  WinEdt软件是一个Windows平台下的强大的通用文本编辑器,其更倾向于LaTeX/TeX文档的编辑  latex定义:  LaTeX(LATEX,音译“拉泰赫”)是一种基于ΤΕΧ的排版系统,由美国计算机学家莱斯利·兰伯特(Leslie Lamport)在20世纪80_winedt 11

TabLayout ViewPager fragment 联动_tablayout fragment绑定后如何联动 java android-程序员宅基地

文章浏览阅读245次。首先先看效果图:具体实现:首先导入依赖包:compile 'com.android.support:design:27.+'布局文件:&lt;?xml version="1.0" encoding="utf-8"?&gt;&lt;RelativeLayout ="http://schemas.android.com/apk/res/android" xmlns:..._tablayout fragment绑定后如何联动 java android

ffmpeg 编码生成mp4文件大小 码率控制_ffmpeg保存mp4设置码率-程序员宅基地

文章浏览阅读1.2w次,点赞6次,收藏14次。AVCodecContext* pCodecCtx = m_stVideoStream.pStream->codec; JP_ASSERT(NULL != pCodecCtx); pCodecCtx->codec_id = eVideoCodecId; pCodecCtx->gop_size = 1_ffmpeg保存mp4设置码率

一文看懂python的迭代器和可迭代对象_一文看懂python的迭代器和可迭代对象_酷python的博客-csdn博客 0阅读1970年01月-程序员宅基地

文章浏览阅读264次。阅读完本文,你将收获以下知识点:什么是迭代器和可迭代对象,他们之间有什么关系迭代器可以迭代的底层原理是什么如何自定义可迭代对象和迭代器迭代器和可迭代对象是两个非常难以搞懂的python概念,我试图用最轻松的方式为你揭开它们的神秘面纱,你也将在这个过程中学习到研究技术的方法。1. 判断一个对象是不是可迭代对象,是不是迭代器我研究的思路,第一步先找到一种办法,可以判断一个对象是不是可迭代对象,是不是迭代器。如果我掌握了这种方法,那么我就可以用它来识别哪些是可迭代对象,哪些是迭代器,这样做非常关_一文看懂python的迭代器和可迭代对象_酷python的博客-csdn博客 0阅读1970年01月01

高精度罗盘的特点介绍_电子罗盘 python-程序员宅基地

文章浏览阅读641次。高精度罗盘的特点介绍电子罗盘作为飞行器方位测量以及飞行姿态监测的常用设备,广泛应用于航空航天系统中的各类导航仪器和姿态传感器中,测量的精度直接会影响到系统的性能。因此,高精度电子罗盘在航空、航天、机器人、航海以及车辆自主导航等精确定位导航系统领域起着十分重要的作用,具有广阔的市场前景。什么是高精度电子罗盘提到电子罗盘,就不得不提到传统的罗盘。早在两千多年前,我国人民就已经使用天然磁石来指示方向..._电子罗盘 python

排队论模型(二):生灭过程 、 M / M /s 等待制排队模型、多服务台模型_排队论多服务台排队模型-程序员宅基地

文章浏览阅读5.5w次,点赞63次,收藏330次。排队论模型(一):基本概念、输入过程与服务时间的常用概率分布排队论模型(二):生灭过程 、 M / M /s 等待制排队模型、多服务台模型排队论模型(三):M / M / s/ s 损失制排队模型排队论模型(四):M / M / s 混合制排队模型排队论模型(五): 有限源排队模型、服务率或到达率依赖状态的排队模型排队论模型(六):非生灭过程排队模型、爱尔朗(Erlang)排队..._排队论多服务台排队模型

随便推点

native层实现touch事件转key事件_touchinputmapper::dispatchmotion-程序员宅基地

文章浏览阅读572次。需求 最近公司来了一个需求,需要将touch事件转成key事件,只针对滑动事件与触摸事件。需求分析 首先这个需求是可以在kernel里面做的,由于我们没有kernel代码,因此这个方案就被pass掉了。第二个想到的是在java层做,想找一个拦截touch事件的方法,类似PhoneWindowMananger中拦截key事件的方法,可是没找到,找到的地方都已经到app层了,这样就可能有点..._touchinputmapper::dispatchmotion

python视图ajax请求,python之 使用 flask Blueprint(蓝图) 接收前台的ajax的post请求,报405 METHOD NOT ALLOWED错误的解决办法...-程序员宅基地

文章浏览阅读516次。在利用flask进行python的项目的开发过程中,做到了注册这一块,在前台利用ajax+post请求的时候,报了405 METHOD NOT ALLOWED的错误。网上的解决办法乱搜了一通,试了好久,均没有解决405 METHOD NOT ALLOWED这个问题。image.png和报错相关的文件代码(passport.py文件)如下@api.route("/users", methods=['..._flask 错误处理 ajax

react-monaco-editor使用_react-monaco-editor无法实现代码高亮-程序员宅基地

文章浏览阅读5k次。1.版本"react": "^17.0.2","@craco/craco": "^6.2.0","monaco-editor": "0.27.0","monaco-editor-webpack-plugin": "4.1.2",2.使用react-monaco-editor代码import React, { useState, useRef } from 'react';import MonacoEditor from 'react-monaco-editor';function ME_react-monaco-editor无法实现代码高亮

6a828下android5.0下usb触摸屏SHOW_TOUCHES有轨迹会导致多次点击或双点系统没反应_show touch enable-程序员宅基地

文章浏览阅读1k次。如果SHOW_TOUCHES为false那么多次点击双点系统都没问题如果SHOW_TOUCHES为true那么设备在getevent正常logcat也有东西就是系统点击没有反应 遥控器也打印单没反应 界面停止不动 am start 也不好使getevent -p发现 mstarpitayaBoardConfigCommonmk144ENABLE_HWCURSOR true undef ENA_show touch enable

pytorch中的tensor以numpy形式进行输出保存_pytorch保存tensor为np-程序员宅基地

文章浏览阅读6.5k次,点赞4次,收藏9次。pytorch中的tensor以numpy形式进行输出保存因为tensor和numpy不是一种数据类型,所以,在将数据输出保存之前,需要将tensor的数据类型进行转换,否则会报一下的错误TypeError: can't convert cuda:0 device type tensor to numpy. Use Tensor.cpu() to copy the tensor to host memory first.以下先贴一版没修改之前的代码,也就是会报error的。# a是我需要保存的数据_pytorch保存tensor为np

spring-cloud gateway 网关调优-程序员宅基地

文章浏览阅读5.9k次。网关线程数的增加,对吞吐量有较大提升;网关对CPU要求较高,建议提升CPU性能,但需要权衡单台高配和多台低配的整体性能对比;网关对内存、硬盘要求较低;在吞吐量追求和CPU负载升高之间,做权..._reactor.netty.ioworkercount

推荐文章

热门文章

相关标签