首页 > 技术文章 > HDU 6313

tiberius 2018-07-27 09:40 原文

题意略。

思路:数论题。

#include<bits/stdc++.h>
using namespace std;
const int p = 47;
const int maxn  = p * p;
int ans[maxn + 5][maxn + 5];

int main(){
    printf("%d\n",2000);
    for(int x = 0;x < maxn;++x){
        int k = x / p;
        int b = x % p;
        for(int i = 0;i < p;++i){
            int y = i * p + (k * i + b) % p;
            ans[x][y] = 1;
        }
    }
    for(int i = 0;i < 2000;++i){
        for(int j = 0;j < 2000;++j)
            printf("%d",ans[i][j]);
        printf("\n");
    }
    return 0;
} 

 

推荐阅读