吐槽
牛客的评测机我是真的无语,这题输出数据居然只能用printf,但凡用一点cout就超时,就这卡了我一个小时。。。所以以后遇到大规模数据输出还是都用printf保险,防止再次被坑。
思路
这题没什么思维难度,直接暴力填数就行,从上次填的位置往后继续填就行,如此循环反复。就是这模拟一直WA把我人给WA麻了,不然就前两百了。

代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n,k;
    cin>>n>>k;
    vector<int> ans[k+5];
    for(int i=1;i<=k;i++)ans[i].resize(n+5);
    int cur = 1;
    for(int i=1;i<=n;i++){
        int cnt = i%k;
        for(int j=1;j<=k;j++){
            ans[j][i]=i/k;
        }
        for(int j=1;j<=cnt;j++){
            ans[cur][i]++;
            cur++;
            if(cur>k)cur=1;
        }
    }
    for(int i=1;i<=k;i++){
        for(int j=1;j<=n;j++){
            printf("%d ",ans[i][j]);
        }
        printf("\n");
    }
    return 0;
}