记录编号 |
111629 |
评测结果 |
AWAWWAAAAA |
题目名称 |
调试LED灯 |
最终得分 |
70 |
用户昵称 |
slyrabbit |
是否通过 |
未通过 |
代码语言 |
C++ |
运行时间 |
0.967 s |
提交时间 |
2014-07-13 18:14:56 |
内存使用 |
0.31 MiB |
显示代码纯文本
#include<iostream>
#include<cstdio>
using namespace std;
unsigned int x,temp,s=0;
int l,n,ans[35];
void f(char a)
{
if(a=='a')
{
x|=(1<<32)-1;
}
if(a=='b')
{
x=0;
}
if(a=='c')
{
x^=(1<<l)-1;
}
if(a=='1')
{
for(unsigned int i=1;i<=l;i+=2)
{
x^=(1<<i)-1;
x^=(1<<i-1)-1;
}
}
if(a=='2')
{
for(unsigned int i=2;i<=l;i+=2)
{
x^=(1<<i)-1;
x^=(1<<i-1)-1;
}
}
if(a>'2'&&a<='9')
{
x&=(1<<(l-(a-'0')))-1;
x|=(1<<a-'0')-1;
}
}
int main()
{
freopen("testled.in","r",stdin);
freopen("testled.out","w",stdout);
unsigned char a;
string str;
cin>>l>>str>>n;
for(int i=l-1,p=0;i>=0;i--)
{
x+=(str[i]-'0'&1)*(1<<p);
p++;
}
for(int i=1;i<=n;i++)
{
cin>>a;
f(a);
}
temp=x;
for(int i=1;i<=l;i++)
{
if(temp&1==1)
s++;
temp>>=1;
}
for(int i=l;i>=1;i--)
{
ans[i]=x&1;
x>>=1;
if(x==0)
break;
}
for(int i=1;i<=l;i++)
{
cout<<ans[i];
}
cout<<endl<<s<<endl;
return 0;
}