zoukankan      html  css  js  c++  java
  • 1005 继续(3n+1)猜想(25分) *

    memset(mark,-1,sizeof(mark));
    对每个输入的数,将它所包含的数标志置1,本身标志置0.
    最后输出所有标志为0的数。
    #include <iostream>
    using namespace std;
    
    int main()
    {
        int k,flag=0;
        cin>>k;
        int mark[101];
        for(int i=0;i<=100;i++)
            mark[i]=-1;
        for(int i=0;i<k;i++)
        {
            int temp;
            cin>>temp;
            if(mark[temp]==-1)
            {
                mark[temp]=0;
                while(temp>1)
                {
                    if(temp%2==1)
                        temp=3*temp+1;
                    temp/=2;
                    if(temp<=100)
                        mark[temp]=1;
                }
            }
        }
        for(int i=100;i>=0;i--)
        {
            if(flag==0&&mark[i]==0)
            {
                cout<<i;
                flag=1;
            }
            else if(flag==1&&mark[i]==0)
                cout<<" "<<i;
        }
        cout<<endl;
        return 0;
    }
  • 相关阅读:
    刘志博 作业 2.15
    刘志博 作业2.6
    作业一
    2.6
    张靖悦
    java 2.15
    java 2.6
    java 1.12
    java 1.8
    java 1.3
  • 原文地址:https://www.cnblogs.com/QRain/p/12218659.html
Copyright © 2011-2022 走看看