团体程序设计天梯赛 L3-004. 肿瘤诊断
数组的大小不能开太大,否则会出现段错误
用bfs而不用dfs,dfs存储太多中间过程,会超内存
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#define maxm 1286+1
#define maxn 128+1
#define maxl 60+1
//#define maxt maxm*maxn*maxl
#define maxt 1000000 //bool ***a; bool a[][][]; long dx[]={,-,,,,};
long dy[]={,,,-,,};
long dz[]={,,,,,-}; long count=,area,m,n,l,t;
long x[maxt],y[maxt],z[maxt]; //void dfs(long x,long y,long z)
//{
// a[x][y][z]=false;
// area++;
// long xx,yy,zz,p;
// for (p=0;p<6;p++)
// {
// xx=x+dx[p];
// yy=y+dy[p];
// zz=z+dz[p];
// if (xx>=1 && xx<=m && yy>=1 && yy<=n && zz>=1 && zz<=l && a[xx][yy][zz])
// dfs(xx,yy,zz);
// }
//} int main()
{
long i,j,k,p;
long xx,yy,zz,head,tail;
scanf("%ld%ld%ld%ld",&m,&n,&l,&t);
/*
a=(bool ***) malloc (sizeof(bool **)*62);
for (i=0;i<62;i++)
a[i]=(bool **) malloc (sizeof(bool *)*1288);
for (i=0;i<62;i++)
for (j=0;j<1288;j++)
a[i][j]=(bool *) malloc (sizeof(bool )*130);
*/ // if (m<n)
// {
// for (k=1;k<=l;k++)
// {
// for (i=1;i<=m;i++)
// for (j=1;j<=n;j++)
// {
// scanf("%ld",&v);
// if (v)
// a[j][i][k]=true;
// else
// a[j][i][k]=false;
// }
// }
// }
// else
// {
for (k=;k<=l;k++)
{
for (i=;i<=m;i++)
for (j=;j<=n;j++)
scanf("%ld",&a[i][j][k]);
}
// } for (i=;i<=m;i++)
for (j=;j<=n;j++)
for (k=;k<=l;k++)
if (a[i][j][k])
{
// area=0;
// dfs(i,j,k);
//// printf("%ld\n",area);
// if (area>=t)
// count+=area; head=;
tail=;
x[]=i;
y[]=j;
z[]=k;
a[i][j][k]=false;
while (head<tail)
{
head++;
for (p=;p<;p++)
{
xx=x[head]+dx[p];
yy=y[head]+dy[p];
zz=z[head]+dz[p];
if (xx>= && xx<=m && yy>= && yy<=n && zz>= && zz<=l && a[xx][yy][zz])
{
a[xx][yy][zz]=false;
tail++;
x[tail]=xx;
y[tail]=yy;
z[tail]=zz;
}
}
}
// printf("%ld\n",tail);
if (tail>=t)
count+=tail;
} printf("%ld",count);
return ;
}
团体程序设计天梯赛 L3-004. 肿瘤诊断的更多相关文章
- 团体程序设计天梯赛(CCCC) L3021 神坛 的一些错误做法(目前网上的方法没一个是对的) 和 一些想法
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3019 代码排版 方法与编译原理密切相关,只有一个测试点段错误
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3015 球队“食物链” 状态压缩
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code #include <cstdio> #include ...
- 团体程序设计天梯赛(CCCC) L3014 周游世界 BFS证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3013 非常弹的球 不同思路
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 团体程序设计天梯赛(CCCC) L3012 水果忍者 上凸或下凹的证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code #include <cstdio> #include ...
- 团体程序设计天梯赛(CCCC) L3009 长城 方法证明
团体程序设计天梯赛代码.体现代码技巧,比赛技巧. https://github.com/congmingyige/cccc_code
- 树状数组+二分答案查询第k大的数 (团体程序设计天梯赛 L3-002. 堆栈)
前提是数的范围较小 1 数据范围:O(n) 2 查第k大的数i:log(n)(树状数组查询小于等于i的数目)*log(n)(二分找到i) 3 添加:log(n) (树状数组) 4 删除:log(n) ...
- PTA L2-001 紧急救援-最短路(Dijkstra)多条最短路找最优解并输出路径 团体程序设计天梯赛-练习集
L2-001 紧急救援 (25 分) 作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图.在地图上显示有多个分散的城市和一些连接城市的快速道路.每个城市的救援队数量和每一条连接两个城市的快 ...
- PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中……)
PTA|团体程序设计天梯赛-练习题目题解锦集(持续更新中) 实现语言:C/C++: 欢迎各位看官交流讨论.指导题解错误:或者分享更快的方法!! 题目链接:https://pintia.cn/ ...
随机推荐
- Leetcode_6. Zigzag convertion
6. Zigzag convertion 对输入的字符串做锯齿形变换,并输出新的字符串,所谓zigzag变化如下图所示. 将"ABCDEFGHIJKL"做4行的锯齿变换,新的字符串 ...
- Mysql数据库的隔离级别
Mysql数据库的隔离级别有四种 1.read umcommitted 读未提交(当前事务可以读取其他事务没提交的数据,会读取到脏数据) 2.read committed 读已提交(当前事务不能读 ...
- Scrum立会报告+燃尽图(Final阶段第三次)
此作业要求参见:https://edu.cnblogs.com/campus/nenu/2018fall/homework/2481 项目地址:https://coding.net/u/wuyy694 ...
- LeetCode 566. Reshape the Matrix (C++)
题目: In MATLAB, there is a very useful function called 'reshape', which can reshape a matrix into a n ...
- 08慕课网《进击Node.js基础(一)》事件events
引用events模块中的EventEmitter 事件的监听和发射 相同的事件发射数量有限,可以通过setMaxListeners设置峰值 var EventEmitter = require('ev ...
- java微信开发之接受消息回复图片或者文本
上回说到 接口连接成功,接下来是真正的开发了. 消息的接收,整个过程就是关注订阅号的用户在微信订阅号中发送消息,微信服务器接收到消息,将消息发给开发者的服务器,服务器接收消息然后可以根据内容进行回复. ...
- Oracle安装后出现的问题
安装oracle没有勾选"安装模板数据库",可以通过执行以下命令进行修改: cd $ORACLE_HOME/rdbms/admin 到这个目录下sqlplus /as sysdba ...
- WPF四则运算《《《《《策略模式
设计思路: 因为之前没有用过WPF,听说和window窗体语法类似,就想着仿照之前的Window窗体做的,首先用三个textbox存储数据,添加一个comboBox,利用索引选择运 ...
- linux下创建virtualenv时指定python版本
virtualenv是python开发中一个重要的工具,它可以帮助我们创建一个干净的python解释环境,创建虚拟环境时,这个虚拟环境的python版本往往是系统默认的2.x版本.别急,我们只需要一条 ...
- iOS- 什么是GitHub?关于它的自我介绍「初识 GitHub」
1 前言 我一直认为 GitHub 是程序员必备技能,程序员应该没有不知道 GitHub 的才对,我当初接触 GitHub 也大概工作了一年多才开始学习使用,我读者里很多是初学者,而且还有很多是在校大 ...