SGU175-Encoding
来源:互联网 发布:淘宝店发货地址不能改 编辑:程序博客网 时间:2024/04/30 04:47
Let phi(W) is the result of encoding for algorithm:
1. If the length of W is 1 then phi(W) is W;
2. Let coded word is W = w1w2...wN and K = N / 2 (rounded down);
3. phi(W) = phi(wNwN-1...wK+1) + phi(wKwK-1...w1).
For example, phi('Ok') = 'kO', phi('abcd') = 'cdab'.
Your task is to find position of letter wq in encoded word phi(W).
Input
Given integers N, q (1 <= N <= 10^9; 1<= q <= N), where N is the length of word W.
Output
Write position of letter wq in encoded word phi(W).
Sample test(s)
Input
9 4
Output
8
phi(W)经过一下步骤得出来一个字符窜:1. W 如果长度为1 ,则 phi(W) 就是 W;2. 我们假设 W = w1w2…wN 以及 K = N / 2 (向下去整);3. phi(W) = phi(wNwN-1…wK+1) + phi(wKwK-1…w1).
例如, phi(‘Ok’) = ‘kO’, phi(‘abcd’) = ‘cdab’
递归。
#include<iostream>#include<string.h>#include<stdio.h>#include<ctype.h>#include<algorithm>#include<stack>#include<queue>#include<set>#include<math.h>#include<vector>#include<map>#include<deque>#include<list>using namespace std;int main(){ int n,q,c=1; cin>>n>>q; while(n>1) { int k=n/2; if(q<=k) { c+=n-k; n=k; q=n-q+1; } else { q=n-q+1; n-=k; } } cout<<c<<endl; return 0;}
- SGU175-Encoding
- sgu175:Encoding(二分模拟)
- Encoding
- Encoding
- encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- Encoding
- UID-08-PS-海报(招贴)2
- 查看SQLite是否创建成功
- Linux网络驱动源码分析(二)
- 1000. 链式哈希
- 透过SQL Server 2008访问Oracle 11g的配置方法
- SGU175-Encoding
- strlen、sizeof,sizeof(*)含义及区别
- 2014找工作总结-机会往往留给有准备的人
- 1006Sum Problem
- 2013.12.09
- Android 图片处理工具类封装
- spring配置文件详解--真的蛮详细
- 解读Makefile (1)
- 合作,向强者学习,成长