1. 题目

传送门= ̄ω ̄=

2. 题解

额。。。

要是我NOIP2017有这运气就好了。

代码:

#include <bits/stdc++.h>
using namespace std;
int n,ans;
stack<int> st[60];
bool ispow(int a)
{
    int sq=sqrt(a);
    return sq*sq==a;
}
int main()
{
    scanf("%d",&n);
    for(ans=1;1;ans++)
    {
        bool flag=0;
        for(int j=1;j<=n;j++)if(flag=(st[j].empty()||ispow(st[j].top()+ans)))
            {st[j].push(ans);break;}
        if(!flag)break;
    }
    printf("%d\n",ans-1);
    for(int i=1;i<=n;i++,putchar('\n'))
        while(!st[i].empty())printf("%d ",st[i].top()),st[i].pop();
    return 0;
}

分享至ヾ(≧∇≦*)ゝ:
分类: 所有

XZYQvQ

炒鸡辣鸡的制杖蒟蒻一枚QvQ

发表评论

电子邮件地址不会被公开。 必填项已用*标注

你是机器人吗? =。= *