ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#211957 | #3815. 种树 | OS_AC | 100 | 0ms | 1216kb | C++ | 690b | 2024-10-13 09:09:06 | 2024-10-13 12:53:17 |
answer
#include<bits/stdc++.h>
using namespace std;
void cleancin_n(){
cin.ignore(numeric_limits<streamsize>::max(),'\n');
}
int a[1001][1001];
int n,m,k;
int cnt=0;
bool check(int ke){
for(int i=1;i<=n;i++){
for(int j=1;j<=m;j++){
if(a[i][j]==1 && (a[i][j+1]==1 || a[i][j-1]==1 || a[i-1][j]==1 || a[i+1][j]==1)){
return false;
}
}
}
return true && ke==k;
}
void dfs(int x,int y,int ke){
if(ke>k){
return;
}
if(x==n && y==m+1){
if(check(ke)){
cnt++;
}
return;
}
if(y==m+1){
y=1;
x++;
}
a[x][y]=0;
dfs(x,y+1,ke);
a[x][y]=1;
dfs(x,y+1,ke+1);
}
signed main(){
cin>>n>>m>>k;
dfs(1,1,0);
cout<<cnt;
return 0;
}
详细
小提示:点击横条可展开更详细的信息
Test #1:
score: 10
Accepted
time: 0ms
memory: 1204kb
input:
2 2 1
output:
4
result:
ok 1 number(s): "4"
Test #2:
score: 10
Accepted
time: 0ms
memory: 1208kb
input:
2 3 2
output:
8
result:
ok 1 number(s): "8"
Test #3:
score: 10
Accepted
time: 0ms
memory: 1216kb
input:
4 4 2
output:
96
result:
ok 1 number(s): "96"
Test #4:
score: 10
Accepted
time: 0ms
memory: 1216kb
input:
4 4 5
output:
304
result:
ok 1 number(s): "304"
Test #5:
score: 10
Accepted
time: 0ms
memory: 1212kb
input:
3 4 3
output:
84
result:
ok 1 number(s): "84"
Test #6:
score: 10
Accepted
time: 0ms
memory: 1212kb
input:
3 5 2
output:
83
result:
ok 1 number(s): "83"
Test #7:
score: 10
Accepted
time: 0ms
memory: 1208kb
input:
3 5 3
output:
215
result:
ok 1 number(s): "215"
Test #8:
score: 10
Accepted
time: 0ms
memory: 1212kb
input:
3 5 4
output:
276
result:
ok 1 number(s): "276"
Test #9:
score: 10
Accepted
time: 0ms
memory: 1208kb
input:
3 5 5
output:
174
result:
ok 1 number(s): "174"
Test #10:
score: 10
Accepted
time: 0ms
memory: 1212kb
input:
4 3 5
output:
18
result:
ok 1 number(s): "18"
Extra Test:
score: 0
Extra Test Passed