POJ 2316 SPIN

来源:互联网 发布:linux 禁止端口访问 编辑:程序博客网 时间:2024/05/21 14:49
Time Limit: 1000MS
Memory Limit: 65536KTotal Submissions: 6241
Accepted: 3227

Description

Simulate a locked spinner puzzle. 

A locked spinner puzzle is a puzzle where you can only change wheels in groups. It is a common puzzle to achieve some value on the spinners by only changing them in the allowed groups. 

Imagine a row of D numbered wheels, each labeled sequentially with the digits 0 through 9. This is similar to what is on a briefcase combination lock. 

Below this are a series of B buttons with labels that are D digits long. For example, D may be 4 and the labels are 1000 1200 1002 0111 and 0100. Pressing the button labeled 1000 moves the first wheel once, but leaves the others alone, while pressing the button labeled 1002 moves the first wheel once and the fourth wheel twice, leaving the center wheels unchanged. 

Your task is to simulate such a locked spinner puzzle giving the final readout of the wheels.

Input

The input to your program will be a line containing D digits (at most 10) representing the starting positions of the wheels. Following this, each line will have the button label for which button is pressed next.There will always be at least 1 digit 

Output

Output the final positions of the wheels.

Sample Input

000110030206003411111003

Sample Output

3348

Source

Rocky Mountain 2003
代码:
#include<iostream>
#include<cstdio>
#include<cstring>
using namespace std;
int main()
{
char v[10];
int ans[10];
int i,len;
memset(ans,0,sizeof(ans));
for(;gets(v);)
{
len=strlen(v);
for(i=0;i<len;++i)
{
ans[i]+=v[i]%48;
ans[i]%=10;

}
}
for(i=0;i<len;++i)
{
printf("%d",ans[i]);
}
return 0;
}

0 0
原创粉丝点击