记录编号 133279 评测结果 AAAAAAAAAA
题目名称 调试LED灯 最终得分 100
用户昵称 Gravatar乌龙猹 是否通过 通过
代码语言 C++ 运行时间 0.444 s
提交时间 2014-10-27 18:52:00 内存使用 0.31 MiB
显示代码纯文本
#include<cstdio>
#include<iostream>
using namespace std;

int L,n;
int Ans;
int f[33];

string s,str;

void in();
void work(char);

int main()
{
    freopen("testled.in","r",stdin);
	freopen("testled.out","w",stdout);
	ios::sync_with_stdio(false);
	in();
	for(int i=0;i<n;i++) work(str[i]);
	for(int i=1;i<=L;i++)
	{
		printf("%d",f[i]);
		if(f[i]) Ans++;
	}
	printf("\n%d\n",Ans);
	return 0;
}
void in()
{
	cin>>L>>s>>n>>str;
	for(int i=0;i<L;i++) f[i+1]=s[i]-48;
}
void work(char ch)
{
	switch(ch)
	{
		case('a'):
			{
				for(int i=1;i<=L;i++) f[i]=1;
				return;
			}
        case('b'):
			{
				for(int i=1;i<=L;i++) f[i]=0;
				return;
			}
		case('c'):
			{
				for(int i=1;i<=L;i++) f[i]=!f[i];
				return;
			}
		case('1'):
			{
				for(int i=L;i>=1;i--)
				{
					if((L-i+1)&1) f[i]=!f[i];
				}
				return;
			}
		case('2'):
			{
				for(int i=L;i>=1;i--)
				{
					if(!((L-i+1)&1)) f[i]=!f[i];
				}
				return;
			}
	}
	int k=ch-48;
	for(int i=L-k+1;i<=L;i++) f[i]=1;
	for(int i=1;i<=k;i++) f[i]=0;
}