题目链接:https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&page=show_problem&problem=149

紫书P83

解题报告:

思路很巧。每个字符这样记录,由于同一个值可能有好几种对应,比如0,00,000,这样用一个二维数组code[len][v] 记录字符。

二进制再熟悉一遍。扫一遍长度为len的二进制所有数值。for(int v = 0;v<(1<<len)-1;v++)

#include <stdio.h>
#include <string.h> int code[][<<]; int readchar()
{
for(;;)
{
int ch = getchar();
if(ch != '\n' && ch != '\r') return ch;
}
} int readint(int c) {
int v = ;
while(c--) v = v * + readchar() - '';
return v;
} int readcode()
{
memset(code,,sizeof(code));
code[][] = readchar();
for(int i = ; i<=; i++)
{
for(int j=; j<(<<i)-; j++)
{
int ch = getchar();
if(ch==EOF) return ;
if(ch=='\n'||ch=='\r') return ;
code[i][j] = ch;
}
}
return ;
} void printcodes()
{
for(int len = ; len <= ; len++)
for(int i = ; i < (<<len)-; i++)
{
if(code[len][i] == ) return;
printf("code[%d][%d] = %c\n", len, i, code[len][i]);
}
} int main()
{
//freopen("input.txt","r",stdin);
while(readcode())
{
while(true)
{
int len = readint();
if(len == ) break;
while(true)
{
int v = readint(len);
if(v == ( << len)-) break;
putchar(code[len][v]);
}
}
putchar('\n');
}
return ;
}

UVa 213,World Finals 1991,信息解码的更多相关文章

  1. 把vux中的@font-face为base64格式的字体信息解码成可用的字体文件

    在最近移动端项目中用到了vux,感觉用着还习惯,当把vux使用到PC端的时候出现了IE浏览器出现,这样的错误信息: CSS3114: @font-face 未能完成 OpenType 嵌入权限检查.权 ...

  2. 算法习题---4.4信息解码(UVa213)

    一:题目 消息编码方案要求在两个部分中发送一个被编码的消息.第一部分:称为头,包含消息的字符.第二部分包含一个模式 表示信息.你必须写一个程序,可以解码这个消息. (一)题目详细 你的程序的编码方案的 ...

  3. UVA 213 信息解码(二进制&位运算)

    题意: 出自刘汝佳算法竞赛入门经典第四章. 考虑下面的01串序列: 0, 00, 01, 10, 000, 001, 010, 011, 100, 101, 110, 0000, 0001, …, 1 ...

  4. UVa 213 信息解码 (模拟 && 二进制)

    题意 :对于下面这个字符串 0,00,01,10,000,001,010,011……. 首先是长度为1的串,然后是长度为2的串,以此类推.不存在全为1的串. 你的任务是编写一个程序.首先输入一个代码头 ...

  5. 【每日一题】 UVA - 213 Message Decoding 模拟解码+读入函数+阅读题

    题意:阅读理解难度一道比一道难orz.手摸了好久样例 题解: 读入:大循环用getline读入header顺便处理一下,  里面再写两重循环,外层一次读三个串,内层一次读num个串. 之后就查表,线性 ...

  6. UVA 213 Message Decoding 【模拟】

    题目链接: https://cn.vjudge.net/problem/UVA-213 https://uva.onlinejudge.org/index.php?option=com_onlinej ...

  7. 4_4 信息解码(UVa213)<二进制:输入技巧与调试技巧>

    消息编码方案要求在两个部分中发送一个被编码的消息.第一部分:称为头,包含消息的字符.第二部分包含一个模式 表示信息.你必须写一个程序,可以解码这个消息. 你的程序的编码方案的核心是一个序列的“0和1” ...

  8. UVa 213 Message Decoding(World Finals1991,串)

     Message Decoding  Some message encoding schemes require that an encoded message be sent in two part ...

  9. uva 213 Message Decoding

    思路来自紫书...开始时的思路估计100行+,果断放弃!关键:1.正确提取出函数!   initmap():初始化字母与整数的映射.   returnint(x):向后读取x位,并转换为十进制数返回. ...

随机推荐

  1. Codeforce Round #227 Div2

    这回的看错时间了! 发现理论可以涨分的- -

  2. nyist 506 洗澡

    http://acm.nyist.net/JudgeOnline/problem.php?pid=506 洗澡 时间限制:1000 ms  |  内存限制:65535 KB 难度:1   描述 Mos ...

  3. struts文件上传(单文件)

    第01步:配置web.xml <?xml version="1.0" encoding="UTF-8"?> <web-app version= ...

  4. paper 44 :颜色矩和颜色相关图(color correlogram)

  5. gulpfile.js

    文件目录如上: 下载代码地址:https://github.com/lianbinghua/gulptest 切换目录:cd gulp 安装依赖包:npm install 编译文件:gulp或者gul ...

  6. linux-批量重命名脚本

    #!/bin/bash # rename jpg and png count= for img in *.jpg *.png do new=image-$count.${img#*.} mv > ...

  7. 夺命雷公狗mongodb之----mongodb---2---常用命令和技巧

    查看有那些数据库: show dbs 切换到那个库: use  库名 use local use还有一个作用就是可以“创建一个数据库” use test 删除数据库: db.dropDatabase( ...

  8. 【linux】自定义配置debian+openbox

    openbox确实是好东西阿,小巧,不开iceweasel时内存总使用量不到200M,功能又强大,不过限于我是菜鸟,openbox再强大也有限...debian装openbox是及其简单的,不过为了使 ...

  9. jquery 下拉菜单

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. Entity Framework 无法对没有主键的视图映射实体的解决办法

    我们在使用Entity Framework的时候经常会把数据库中的某一个视图映射为EF的实体,但是如果数据库视图中的列没有包含表的主键列,EF会报出警告说视图没有主键,导致视图映射为实体失败,错误如下 ...