| 题目链接 | 难度等级 | 完成状态 | 完成分数 | 最后编辑时间 | 需要注意 |
|---|---|---|---|---|---|
| 3D City Model | ★☆☆☆☆ | 答案正确 | 100 | 2015-2-1 18:13:54 | 无 |
(AC 780)
小方块拼成的模型,给高度图,求表面积。
原来真的有AC数少的签到题……就是求一下每一格子的高度差求个和。
{{折叠|519.cpp代码已折叠
|
#include<iostream>
using namespace std;
int u[3000][3000]={},s=0;
int di[4]={1,-1,0,0},dj[4]={0,0,1,-1};
int main()
{
int n,m;
cin>>n>>m;
for(int i=1;i<=n;++i)
{
for(int j=1;j<=m;++j)
{
char a;
cin>>a;
u[i][j]=a-'0';
}
}
for(int i=1;i<=n;++i)
for(int j=1;j<=m;++j)
{
if(u[i][j])
s+=2;
for(int d=0;d<=3;++d)
{
int ni=i+di[d],nj=j+dj[d];
if(u[ni][nj]<=u[i][j])
s+=u[i][j]-u[ni][nj];
}
}
cout<<s;
return 0;
}
|sgu519}}