文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>POJ 2316 SPIN 解题报告

POJ 2316 SPIN 解题报告

时间:2010-03-16  来源:华南理工大学

 

资源来源:http://blog.chinaunix.net/u3/105033/index.html

 

一、问题描述

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. 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

0001

1003

0206

0034

1111

1003

Sample Output

3348

二、分析解答

按位将输入的所有数据加起来,然后对10取模即是结果。

三、代码

 

#include<iostream>
#include<string>
using namespace std;
int main()
{
    int d[10];
    string str;
    int i;
    cin>>str;
    int len=str.size();
    for(i=0;i<len;++i)
    {
        d[i]=str[i]-48;
    }
    while(cin>>str)
    {
        for(i=0;i<len;++i)
        {
            d[i]+=(str[i]-48);
        }
    }
    for(i=0;i<len;++i)
    {
        d[i]%=10;
        cout<<d[i];
    }
    cout<<endl;
    return 0;
}


相关阅读 更多 +
排行榜 更多 +
辰域智控app

辰域智控app

系统工具 下载
网医联盟app

网医联盟app

运动健身 下载
汇丰汇选App

汇丰汇选App

金融理财 下载