poj1023
#include<iostream>
#include<string>
using namespace std;
int main()
{
int T;
cin >> T;
while(T--)
{
int i, j, k;
long long m;
int a[100]={0}, b[100]={0};
string s;
cin >> k >> s >> m;
int op=1;
if(m<0)
op=0, m=-m;
for(i=0,j=k-1; i<k; i++, j--)
{
if(s[i] == 'n' && op)
b[j] = 1;
else if(s[i]=='p' && !op)
b[j] = 1;
a[i] = m%2;
m/=2;
}
for(i=0; i<=k; i++)
{
a[i+1] += a[i]/2;
a[i] %= 2;
if(a[i] && b[i])
a[i+1]++;
}
if(a[k] || a[k+1] || m)
cout << "Impossible" <<endl;
else
{
for(i=k-1; i>=0; i--)
cout << a[i];
cout << endl;
}
}
return 0;
}
poj1023的更多相关文章
- POJ1023 The Fun Number System
题目来源:http://poj.org/problem?id=1023 题目大意: 有一种有趣的数字系统.类似于我们熟知的二进制,区别是每一位的权重有正有负.(低位至高位编号0->k,第i位的权 ...
随机推荐
- StudioStyle 使用 厌倦了默认的Visutal Studio样式了,到这里找一个酷的试试
厌倦了默认的Visutal Studio样式了,到这里找一个酷的试试 http://studiostyl.es/ 去下载个自己喜欢的编码样式吧 如果你有想法 有能力 可以自己去做一个自己喜欢的 OK ...
- 怎么捕获和记录SQL Server中发生的死锁
我们知道,可以使用SQL Server自带的Profiler工具来跟踪死锁信息.但这种方式有一个很大的敝端,就是消耗很大.据国外某大神测试,profiler甚至可以占到服 务器总带宽的35%,所以,在 ...
- method=“post/get”
Form表单中method="post/get'的区别 Form提供了两种数据传输的方式——get和post.虽然它们都是数据的提交方式,但是在实际传输时确有很大的不同,并且可能会对数据 ...
- IOS-textField
//初始化textfield并设置位置及大小 UITextField *text = [[UITextField alloc]initWithFrame:CGRectMake(20, 20, 130, ...
- iOS 原生二维码扫描(可限制扫描区域)
篇文章的主要原因不是展示如何使用 AVFoundation 来进行二维码扫描,更主要的是限制扫描二维码的范围.(因为默认的是全屏扫描) 项目遇到扫描二维码的功能需求,这里我放弃了使用三方库,而采用了 ...
- oc 怎么接收NSSting字符的方法
]; //使用一个缓冲区 NSLog(@"请输入一个字符串:"); scanf("%s",buffer); NSString * str = [NSString ...
- HTML5画布
- 如何使一个input文本框随其中内容而变化长度。
第一:<input type="text" onkeydown="this.onkeyup();" onkeyup="this.size=(th ...
- PHP 关于MongoDB的操作
<?php header("Content-type:text/html;charset=utf-8"); $m = new MongoClient(); // 连接 $db ...
- Python自动化运维之27、Django(一)
一.概述 1.什么是框架? 框架,即framework,特指为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单说就是使用别人搭好的舞台,你来做表演. 2.常 ...