Lv.1
喜欢我巨型钻头吗
在 【不懂必须问】 中回复
one.js里面exports.xx=xx
在index.js里 const xxx = require("./xx.js")
直接调用xxx.xx()即可
2023-07-18T22:10:07 点赞:0
在 【跟风】天气太热,来讲几个冷笑话 中回复
李森科教育他的助手:我们做科研的要以科学为妻·子,以成果为孩子.
助手恍然大悟:原来您的科研成果是靠喵科学得来的啊!
2023-07-25T16:04:01 点赞:1
在 【跟风】天气太热,来讲几个冷笑话 中回复
地狱笑话.
美·国老师问他的学生18世纪50美元可以买什么.
一个黑人学生举手说:我!我!我!
老师说:很好,那剩下49美元呢?
2023-07-29T13:36:54 点赞:1
在 【话题讨论】点灯游戏 | 数学好的请进 中回复
#include<bits/stdc++.h>
using namespace std;
int n,m;
int ans = 0;
int pos_to_num(int x,int y){
if(x < 0 || y < 0 || x >= n || y >= m)
return -1;
return y*n+x;
}
pair<int,int> num_to_pos(int num){
return {num/n,num%n};
}
const int dirx[] = {-1,0,0,0,1},
diry[] = {0,-1,0,1,0};
bitset<300> t[300];//线性基
void insert(bitset<300> a){
bitset<300> p = a;
for(int i = 299; ~i; i--){
if(a[i]){
if(t[i].none()){
t[i] = a;
ans++;
return;
}
a^=t[i];
}
/*if(!a){
flag = 1;
break;
}*/
}
return;
}
void init(){
for(int i = 0; i < n; i++){
for(int j = 0; j < m; j++){
bitset<300> b;//待插入
for(int k = 0; k < 5; k++){
int x1 = i+dirx[k],
y1 = j+diry[k];
int numb = pos_to_num(x1,y1);
if(numb > -1 && numb < n*m){
b[numb] = 1;
}
}
insert(b);
}
}
}//初始化线性基
bool check(bitset<300> a){
for(int i = 300-1; ~i; i--){
if(a.test(i)){
if(t[i].none()){
//t[i] = a;
return 0;
}
a^=t[i];
}
/*if(!a){
flag = 1;
break;
}*/
}
return 1;
}//试着插入
int step(bitset<300> a){
for(int i = 300-1; ~i; i--){
if(a.test(i)){
if(t[i].none()){
//t[i] = a;
return 1;
}
a^=t[i];
auto cur = num_to_pos(i);
cout<<cur.first<<" "<<cur.second<<"\n";
}
/*if(!a){
flag = 1;
break;
}*/
}
return 0;
}
signed main(){
//scanf("%d%d",&n,&m);
n = 8,
m = 8;
init();
bitset<300> mat;//黑板
for(int i = 0; i < n*m; i++){
mat[i] = 1;
}
//cout<<ans<<"\n";
cout<<check(mat)<<endl;
//step(mat);//仍需修改
return 0;
}
2023-07-31T10:24:49 点赞:0