zoukankan      html  css  js  c++  java
  • poj1016

    题目大意:数据统计

    看明白了,就是给你一个数,例如31123314,代表的意思有3个1,1个2,3个3,1个4,但数字本身的有的数字也是有3个1,1个2,3个3,1个4,所以这样的数叫做self-inventorying ,如果经过j步可以变成self-inventorying可以输出self-inventorying after j steps.如果经过j步变成的数跟前面的数一样那就输出enters an inventory loop of length 如果经过15次迭代还无法变成上面的分类,就输出can not be classified after 15 iterations。

    明白意思应该不难了- -,做做去
    学习了string 的应用
    #include<iostream>
    #include<string>
    using namespace std;
    #define maxn 100
    string SelfString(string str)
    {
        int i, a[10]={0};
        string s;
        for(i=0; i<str.length(); i++)
            a[str[i]-'0']++;
        for(i=0; i<10; i++)
        {
            if(a[i])
            {
                while(a[i])
                {
                    s += a[i]%10+'0';
                    a[i] /= 10;
                }
                s += i+'0';
            }
        }
        return s;
    }
    int main()
    {
        string str;
        while(cin >> str, str != "-1")
        {
            string a[maxn];
            int i, j, k=1, ans=0;
            a[0] = str;
            for(i=1; i<=15; i++)
            {
                a[i] = SelfString(a[i-1]);
                if(a[i] == a[i-1])
                {
                    ans = 1;
                    break;
                }
                for(j=0; j<i; j++)
                    if(a[i] == a[j])
                    {
                        ans = 2;
                        break;
                    }
                if(j < i)
                    break;
            }
            if(ans==1 && i==1)
                cout << a[0] <<" is self-inventorying "<<endl;
            else if(ans==1)
                cout << a[0] <<" is self-inventorying after "<< i-1 <<" steps "<<endl;
            else if(i <= 15)
                cout << a[0] <<" enters an inventory loop of length " << i-j <<endl;
            else
                cout << a[0] << " can not be classified after 15 iterations" <<endl;
        }
        return 0;

    } 

  • 相关阅读:
    加班的价值
    webApp 阅读器项目实践
    Oak Seeds 网站项目回顾
    [Echarts]用Echarts绘制饼状图
    [转载] 编程每一天(Write Code Every Day)
    对杀毒软件技术的浅浅理解
    记我的第二次自动化尝试——selenium+pageobject+pagefactory实现自动化下单、退款、撤销回归测试
    学习Selenium遇到的问题和解决方案
    记我的第一次自动化尝试
    jmeter环境配置、使用以及参数化之CSV Data Set Config
  • 原文地址:https://www.cnblogs.com/liuxin13/p/4383938.html
Copyright © 2011-2022 走看看