CCF-2015-9-13-04
2015-09-13 19:29
190 查看
下题为个人做法,只做参考。
二维数组第三个为状态,表示是否已经访问过该条路径。
/*国王给城市修路,两个城市互相有路则为便利城市,路则为便利路,求便利路的条数。第一行输入两个数字m,n ;m 为城市数量,n为路的总数;接下来的n行每行输入两个数i,j : 表示i->j为一条通路最后为一行输出,表示便利路的条数。*/#include "iostream"using namespace std;bool myPorcess(int **p, int start, int end, int size, int deep);int main() {int nCity = 0;int nRoad = 0;cin >> nCity;cin >> nRoad;int **pRoad = new int*[nRoad]();for (int i = 0; i < nRoad; ++i)pRoad[i] = new int[3]();for (int i = 0; i < nRoad; ++i){cin >> pRoad[i][0];cin >> pRoad[i][1];pRoad[i][2] = 0;}int count = 0;for (int i = 0; i < nRoad; ++i) {pRoad[i][2] = 1;if (myPorcess(pRoad, pRoad[i][1], pRoad[i][0], nRoad, 0))count++;for (int j = 0; j < nRoad; ++j)pRoad[j][2] = 0;}cout << count << endl;return 0;}bool myPorcess(int **p,int start,int end,int size,int deep) {if (deep != 0)if (start == end)return true;for (int i = 0; i < size; ++i)if (p[i][0] == start)if (p[i][2] == 1)continue;else {p[i][2] = 1;return myPorcess(p, p[i][1], end, size, 1);}return false;}
相关文章推荐
- 华为测试 字符加密
- 画布
- hdu 5437 优先队列+模拟 **
- ubuntu 14.04设备flash媒体播放器
- 浏览器解析过程
- JQuery动画函数总结
- nyoj 38 布线问题(kruskal 最小生成树)
- 兔子--Spring基金会
- 清除缓存的方法(计算)
- Android图片压缩工具类
- HDU 5233 杂题
- 二叉树的创建和遍历
- 如何善用产品设计的三个层级
- Android图片压缩工具类
- 排序算法 golang 实现
- C语言strstr()函数常用示例详解[求一个字符串在另一个字符串中出现的次数]
- Exceptionin thread "main" java.lang.UnsatisfiedLinkError:org.apache.hadoop.util.NativeCrc32.nativeComputeChunkedSumsByteArray(II[BI[BIILjav
- 创建自己的Sprite子类时需要做哪些工作?
- S5PV210开发系列十_Lwip的移植
- Python:函数参数传递:传值?引用?