zoukankan      html  css  js  c++  java
  • UVA

    简单模拟

    STL判重

    //#pragma GCC optimize(2)
    #include <cstdio>
    #include <iostream>
    #include <cstdlib>
    #include <cmath>
    #include <cctype>
    #include <string>
    #include <cstring>
    #include <algorithm>
    #include <stack>
    #include <queue>
    #include <set>
    #include <sstream>
    #include <map>
    #include <ctime>
    #include <vector>
    #include <fstream>
    #include <list>
    #include <iomanip>
    #include <numeric>
    using namespace std;
    typedef long long ll;
    
    const int MAXN = 1e6 + 10;
    
    int len;
    
    int arr[20];
    
    string trans()
    {
        string ret = "";
        for(int i = 0; i < len; i++)
        {
            ret = ret + "-";
            int tmp = arr[i];
    
            while(tmp)
            {
                ret = ret + char((tmp % 10)+'0');
                tmp /= 10;
            }
        }
        return ret;
    }
    
    bool judge()
    {
        for(int i = 0; i < len; i++)
            if(arr[i] != 0)
                return false;
        return true;
    }
    
    int main()
    {
        //ios::sync_with_stdio(false);
        //cin.tie(0);     cout.tie(0);
        //freopen("D://test.in", "r", stdin);
        //freopen("D://test.out", "w", stdout);
        int t;
    
        cin>>t;
    
        while(t--)
        {
            cin>>len;
            
            for(int i = 0; i < len; i++)
                cin>>arr[i];
            
            set <string> ST;
    
            ST.insert(trans());
    
            while(1)
            {
                int rt = arr[0];
    		
                for(int i = 0; i < len - 1; i++)
                {
                    arr[i] = abs(arr[i] - arr[i + 1]);
                }
    			
    			arr[len - 1] = abs(arr[len - 1] - rt);
                
    			if(judge())
                {
                    cout<<"ZERO"<<endl;
                    break;
                }
    
                string ss = trans();
    
                if(ST.count(ss))
                {
                    cout<<"LOOP"<<endl;
                    break;
                }
                else
                    ST.insert(ss);
            }
    
        }
        
    
        return 0;
    }
  • 相关阅读:
    前端知识点(1)
    js防抖和节流
    react生命周期方法有哪些?
    vue音乐播放器
    vue天气查询
    vue+axios安装
    vue 实现todolist,包含添加,删除,统计,清空,隐藏功能
    vue简单计数器
    手动搭建的react环境中,关于图片引入的问题
    promise封装ajax
  • 原文地址:https://www.cnblogs.com/zeolim/p/12270424.html
Copyright © 2011-2022 走看看