数组的大小不能开太大,否则会出现段错误

用bfs而不用dfs,dfs存储太多中间过程,会超内存

  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <string.h>
  4. #include <stdbool.h>
  5. #define maxm 1286+1
  6. #define maxn 128+1
  7. #define maxl 60+1
  8. //#define maxt maxm*maxn*maxl
  9. #define maxt 1000000
  10.  
  11. //bool ***a;
  12.  
  13. bool a[][][];
  14.  
  15. long dx[]={,-,,,,};
  16. long dy[]={,,,-,,};
  17. long dz[]={,,,,,-};
  18.  
  19. long count=,area,m,n,l,t;
  20. long x[maxt],y[maxt],z[maxt];
  21.  
  22. //void dfs(long x,long y,long z)
  23. //{
  24. // a[x][y][z]=false;
  25. // area++;
  26. // long xx,yy,zz,p;
  27. // for (p=0;p<6;p++)
  28. // {
  29. // xx=x+dx[p];
  30. // yy=y+dy[p];
  31. // zz=z+dz[p];
  32. // if (xx>=1 && xx<=m && yy>=1 && yy<=n && zz>=1 && zz<=l && a[xx][yy][zz])
  33. // dfs(xx,yy,zz);
  34. // }
  35. //}
  36.  
  37. int main()
  38. {
  39. long i,j,k,p;
  40. long xx,yy,zz,head,tail;
  41. scanf("%ld%ld%ld%ld",&m,&n,&l,&t);
  42. /*
  43. a=(bool ***) malloc (sizeof(bool **)*62);
  44. for (i=0;i<62;i++)
  45. a[i]=(bool **) malloc (sizeof(bool *)*1288);
  46. for (i=0;i<62;i++)
  47. for (j=0;j<1288;j++)
  48. a[i][j]=(bool *) malloc (sizeof(bool )*130);
  49. */
  50.  
  51. // if (m<n)
  52. // {
  53. // for (k=1;k<=l;k++)
  54. // {
  55. // for (i=1;i<=m;i++)
  56. // for (j=1;j<=n;j++)
  57. // {
  58. // scanf("%ld",&v);
  59. // if (v)
  60. // a[j][i][k]=true;
  61. // else
  62. // a[j][i][k]=false;
  63. // }
  64. // }
  65. // }
  66. // else
  67. // {
  68. for (k=;k<=l;k++)
  69. {
  70. for (i=;i<=m;i++)
  71. for (j=;j<=n;j++)
  72. scanf("%ld",&a[i][j][k]);
  73. }
  74. // }
  75.  
  76. for (i=;i<=m;i++)
  77. for (j=;j<=n;j++)
  78. for (k=;k<=l;k++)
  79. if (a[i][j][k])
  80. {
  81. // area=0;
  82. // dfs(i,j,k);
  83. //// printf("%ld\n",area);
  84. // if (area>=t)
  85. // count+=area;
  86.  
  87. head=;
  88. tail=;
  89. x[]=i;
  90. y[]=j;
  91. z[]=k;
  92. a[i][j][k]=false;
  93. while (head<tail)
  94. {
  95. head++;
  96. for (p=;p<;p++)
  97. {
  98. xx=x[head]+dx[p];
  99. yy=y[head]+dy[p];
  100. zz=z[head]+dz[p];
  101. if (xx>= && xx<=m && yy>= && yy<=n && zz>= && zz<=l && a[xx][yy][zz])
  102. {
  103. a[xx][yy][zz]=false;
  104. tail++;
  105. x[tail]=xx;
  106. y[tail]=yy;
  107. z[tail]=zz;
  108. }
  109. }
  110. }
  111. // printf("%ld\n",tail);
  112. if (tail>=t)
  113. count+=tail;
  114. }
  115.  
  116. printf("%ld",count);
  117. return ;
  118. }

团体程序设计天梯赛 L3-004. 肿瘤诊断的更多相关文章

  1. 团体程序设计天梯赛(CCCC) L3021 神坛 的一些错误做法(目前网上的方法没一个是对的) 和 一些想法

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code

  2. 团体程序设计天梯赛(CCCC) L3019 代码排版 方法与编译原理密切相关,只有一个测试点段错误

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code

  3. 团体程序设计天梯赛(CCCC) L3015 球队“食物链” 状态压缩

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code #include <cstdio> #include ...

  4. 团体程序设计天梯赛(CCCC) L3014 周游世界 BFS证明

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code

  5. 团体程序设计天梯赛(CCCC) L3013 非常弹的球 不同思路

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code

  6. 团体程序设计天梯赛(CCCC) L3012 水果忍者 上凸或下凹的证明

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code #include <cstdio> #include ...

  7. 团体程序设计天梯赛(CCCC) L3009 长城 方法证明

    团体程序设计天梯赛代码.体现代码技巧,比赛技巧.  https://github.com/congmingyige/cccc_code

  8. 树状数组+二分答案查询第k大的数 (团体程序设计天梯赛 L3-002. 堆栈)

    前提是数的范围较小 1 数据范围:O(n) 2 查第k大的数i:log(n)(树状数组查询小于等于i的数目)*log(n)(二分找到i) 3 添加:log(n) (树状数组) 4 删除:log(n) ...

  9. PTA L2-001 紧急救援-最短路(Dijkstra)多条最短路找最优解并输出路径 团体程序设计天梯赛-练习集

    L2-001 紧急救援 (25 分)   作为一个城市的应急救援队伍的负责人,你有一张特殊的全国地图.在地图上显示有多个分散的城市和一些连接城市的快速道路.每个城市的救援队数量和每一条连接两个城市的快 ...

  10. PTA|团体程序设计天梯赛-练习题目题解锦集(C/C++)(持续更新中……)

    PTA|团体程序设计天梯赛-练习题目题解锦集(持续更新中) 实现语言:C/C++:      欢迎各位看官交流讨论.指导题解错误:或者分享更快的方法!! 题目链接:https://pintia.cn/ ...

随机推荐

  1. fiddler常识汇总

    Fiddler 抓包工具总结   名称 含义 # 抓取HTTP Request的顺序,从1开始,以此递增 Result HTTP状态码 Protocol 请求使用的协议,如HTTP/HTTPS/FTP ...

  2. AloneQIan---第一次作业

    小学生的噩梦 一.估计与实际 PSP2.1 Personal Software Process Stages 预估耗时(分钟) 实际耗时(分钟) Planning 计划 600 720 • Estim ...

  3. 软工1816 · Beta冲刺(4/7)

    团队信息 队名:爸爸饿了 组长博客:here 作业博客:here 组员情况 组员1(组长):王彬 过去两天完成了哪些任务 推进安卓端各个接口的开发,安卓端各个接口已经基本完成 完成食堂各个平面图的绘制 ...

  4. Leetcode题库——16.最接近的三数之和

    @author: ZZQ @software: PyCharm @file: threeSumClosest.py @time: 2018/10/14 20:28 说明:最接近的三数之和. 给定一个包 ...

  5. myeclipse 导入 import maven web project

    用google才收到了这个.. http://stackoverflow.com/questions/12197662/maven-java-web-project-not-recognised-wh ...

  6. 剑指offer:用两个栈实现队列

    题目描述: 用两个栈来实现一个队列,完成队列的Push和Pop操作. 队列中的元素为int类型. 思路: 可以用stack1来存所有入队的数.在出队操作中,首先将stack1中的元素清空,转移到sta ...

  7. 【TCP/IP详解 卷一:协议】第六章:DHCP 和自动配置

    简介 为了使用 TCP/IP 协议族,每台主机or路由器都需要一定的配置信息: IP地址 子网掩码 广播地址 路由或转发表 DNS 协议配置方法: 手动 通过使用网络服务来获得 使用一些算法来自动确定 ...

  8. vue 中ref 的使用注意事项

    最近看别人的项目发现有些语法不能理解,所以百度进行了学习.现在总结一下. ref 有两种用法 1.ref 加在普通的元素上,用this.ref.name 获取到的是dom元素 2.ref 加在子组件上 ...

  9. Linux网卡配置文件路径是什么?要使服务器上外网,必须满足的条件有哪些?需要配置什么?

    Linux网卡配置文件路径是什么?要使服务器上外网,必须满足的条件有哪些?需要配置什么?    答:    网卡配置文件路径:/etc/sysconfig/network-scripts/ifcfg- ...

  10. poi excel导入 数字自动加小数点

    问题:导入excel表,若表格中为整数数字,不管单元格设置成数字格式还是文本格式,导入时都会出现小数点和0. 我遇到的问题是:一个名称,做测试数据的时候做了纯整形数字,发现了这个问题. 解决办法:在代 ...