lovebet爱博Topcoder SRM 619 DIv2 500 –又是侮辱的一题。这篇稿子就说了一个“问题”!

耻辱,有的问题不是问题

这书判是一个简易的类似约瑟夫环的题材,但是由细节问题迟迟不可知博取不错结果,结果比了几分钟才转对。。耻辱。

lovebet爱博 1

代码:

关于问题之题目 生命连,问题连连。 解决问题是顶级问题。 有的题材未是问题, 有的题目无法化解, 有的题目化解后一律劳永逸, 有的问题解决以后带来新的题材。 你的家伙是个锤子, 看到题目就钉子。 解决本质问题, 避开无解问题, 你所见到的题目, 或许不是问题, 你拟缓解问题, 自己本身就是是单问题。 盯在问题,问题非会见磨, 理解问题,问题才见面知晓你! 所有问题,都是题材; 所有题目,都不是问题! 问题在自此, 问题在你那里。 生命连,问题持续!

lovebet爱博 2lovebet爱博 3

#include <iostream>
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>
#define ll long long
using namespace std;
#define NN 370000

class ChooseTheBestOne
{
private:
public:
    ll calc3(int n)
    {
        return (ll)pow(n,3);
    }
    int countNumber(int N)
    {
        ll now = 1,remain = (ll)(N-1);
        ll rd = 2;
        ll pos;
        int has[5005];
        memset(has,-1,sizeof(has));
        has[0] = 0;
        while(rd < N)
        {
            while(has[now] == 0)
            {
                now = (now+1)%N;
            }
            ll call = calc3(rd);
            ll add = (call-1)%remain;
            ll k = 0;
            for(pos=now;k<add;)
            {
                pos = (pos+1)%N;
                if(has[pos] != 0)
                    k++;
            }
            has[pos] = 0;
            now = (pos+1)%N;
            //cout<<"出去: "<<pos+1<<"   现在"<<now+1<<endl;
            remain--;
            rd++;

        }
        ll i;
        for(i=0;i<N;i++)
        {
            if(has[i] == -1)
            {
                return i+1;
            }
        }
    }
};

int main()
{
    ChooseTheBestOne *kc = new ChooseTheBestOne();
    cout<<(*kc).countNumber(1234)<<endl;
    return 0;
}

View Code