题意:阅读理解难度一道比一道难orz。手摸了好久样例

题解:

  读入:大循环用getline读入header顺便处理一下,

   里面再写两重循环,外层一次读三个串,内层一次读num个串。

  之后就查表,线性输出即可。

  关于判断11111,我用了换底公式:log(id + 1) / log(2) == num + 1 && pow(2, log(id + 1) / log(2))

  关于读入,我写了个getnchar的函数,封装一下getchar()

虽然是final模拟(签到orz)题,码量不大嘛

#include<iostream>
#include<string>
#include<cstring>
#include<cmath>
#include<cstdio>
#include<cstdlib>
#include<stdio.h>
#include<algorithm>
#include<set>
#include<bitset>
#include<map>
using namespace std; #define rep(i,j,k) for(int i = (int)j;i <= (int)k;i ++)
#define per(i,j,k) for(int i = (int)j;i >= (int)k;i --)
#define debug(x) cerr<<#x<<" = "<<(x)<<endl
#define mmm(a,b) memset(a,b,sizeof(a))
#define pb push_back
#define eps 1e-7 typedef long long ll;
const int maxn = 1e5 + ;
const ll mod = 1e9 + ;
//map<int, char> mmp;
char mmp[][]; string line;
void match(string s) {
int len = s.length();
int num = , id = ;
int val = ;
rep(i, , len - ) {
mmp[num][id] = s[i];
id++;
if (log(id + ) / log()==num+&&pow(, log(id + ) / log()) == id + )id = , num++;
}
}
int getnchar(int n) {
int cnt = n;
int now=;
while (cnt--) {
char c = getchar();
if (c == '\n') { cnt++; continue; }
now *= ;
now += c- '';
}
return now;
} int main()
{
while (getline(cin, line)) {
mmm(mmp, ); match(line);
int num;
while (num=getnchar()) {
num--;
while ()
{
int id= getnchar(num+);
if (log(id + ) / log() == num + && pow(, log(id + ) / log()))break;
cout << mmp[num][id];
}
}
cout << endl; getchar();
}
}
/*
TNM AEIOU
0010101100011
1010001001110110011
11000
$#**\
0100000101101100011100101000 TNM AEIOU
001 0T 1
011 000A 111
010 00N 10' ' 01M 11
011 001E
111 000 TAN ME 0T, 00N, 01M, 10' ', 000A, 001E, 010I, 011, 100, 101, 110, 0000, 0001
*/

最新文章

  1. 启用Servlet 3.0新特性——注解支持
  2. mac上运行appium提示错误Encountered internal error running command 解决办法
  3. wpf listbox 内的内容显示问题,需要设置里面的itemsPresenter
  4. RW-50004 While Running adrunfmw during EBS 12.2 Installation
  5. Java算法-堆排序
  6. IT痴汉的工作现状18-思维定式
  7. 学习window系统下的注册表
  8. Makefile中的变量和shell变量
  9. [UOJ UR#16]破坏发射台
  10. BZOJ 1257 - 余数之和 - [CQOI2007]
  11. 前端基础之 html
  12. git提示error setting certificate verify locations以及fatal: unable to access 的解决办法
  13. Leetcode 1-10
  14. 有效运维的 on-call 机制
  15. 总结TCP为什么三次握手四次挥手
  16. zoj4110 Strings in the Pocket(manacher)
  17. 从小白到使用antd+react+react-router+issue+es6搭建博客
  18. 清空select标签中option选项的3种不同方式
  19. 使用vue-cli快速搭建大型单页应用
  20. allegro对齐操作

热门文章

  1. Atitit 数据库表文档生成解决方案
  2. 《深入应用C++11:代码优化与工程级应用》勘误表
  3. 【iCore1S 双核心板_ARM】例程四:USART通信实验——通过命令控制LED
  4. Public key for ambari-server-2.4.2.0-136.x86_64.rpm is not installed 安装ambari报错总结
  5. Python fcntl 与 signal 模块使用
  6. CAS (15) — CAS 线上环境 Ehcache Replication 的非稳定重现错误 java.util.ConcurrentModificationException
  7. Unity5 AssetBundle系列——基本流程
  8. [Hinton] Neural Networks for Machine Learning - Basic
  9. Eclipse常用的几个快捷键
  10. traff.sh