USACO 2.3.3 Zero Sum
来源:互联网 发布:ghost网络克隆软件 编辑:程序博客网 时间:2024/06/05 06:18
DFS
重点是路径记录问题
内存允许的情况下可以用数组
还有一个方法三进制枚举路径然后一个一个进行可行性检查
#include <iostream>#include <fstream>#include <string>//#define LOCALusing namespace std;#ifdef LOCALofstream fout ("out.txt");ifstream fin ("in.txt");#elseofstream fout ("zerosum.out");ifstream fin ("zerosum.in");#endifint cengshu;int num_res = 0;int res[10000][10];char c[] = {' ', '+', '-'};void dfs(int ceng, int sum, int path, int last){if(ceng==cengshu){if(sum==0){int temp=path;int i = 0;while(temp){res[num_res][i++] = temp%10;temp /= 10;}num_res++;}return;} if(ceng>cengshu) return; int temp_last; if(last>=0) temp_last = last*10+ceng+1; else temp_last = last*10-ceng-1; dfs(ceng+1, sum-last+temp_last, path*10, temp_last); dfs(ceng+1, sum+ceng+1, path*10+1, ceng+1); dfs(ceng+1, sum-ceng-1, path*10+2, -ceng-1);return;}int main() {fin>>cengshu;dfs(1, 1, 0, 1);for (int i = 0; i < num_res; ++i){for (int j = 1; j < cengshu ; ++j){int temp = cengshu-1-j;fout<<j<<c[res[i][temp]];}fout<<cengshu<<endl;} return 0;}发现把路径用字符串放在函数参数里边会更方便,可行后直接输出即可
0 0
- USACO 2.3.3 Zero Sum
- USACO 2.3.3 Zero Sum
- USACO 2.3.3 Zero Sum
- USACO 2.3.3 Zero Sum
- [usaco]2.3 Zero Sum
- USACO--2.3Zero Sum
- USACO 2.3 Zero Sum
- USACO 2.3 Zero Sum
- USACO 2.3 Zero Sum (zerosum)
- USACO 2.3 Zero Sum 题解
- USACO-Section2.3 Zero Sum
- 【USACO题库】2.3.3 Zero Sum和为零
- 【USACO题库】2.3.3 Zero Sum和为零
- JZOJ1268.【USACO题库】2.3.3 Zero Sum和为零
- 1031. 【USACO题库】2.3.3 Zero Sum和为零
- USACO-Section 2.3 Zero Sum(枚举)
- USACO section2.3 Zero Sum题解&代码
- 【其他】【USACO】Zero Sum
- IPython :一个交互式计算和开发环境
- 项目26.4个人所得税计算器switch语句
- 函数式编程——函数笔记
- leetcode笔记:Path Sum II
- Product of Array Except Self
- USACO 2.3.3 Zero Sum
- word里创建自己的行文格式
- Eclipse 中设置JVM 内存
- 【2015/10/2】Linux学习日志_Day4 改变用户权限 文件类型与权限 链接 服务
- opencv多线程读取视频的问题
- ARC指南1 - strong和weak指针
- 在win7下安装python开发环境和numpy,scipy,matplotlib模块的问题
- ARC指南2 - ARC的开启和禁止
- android4.4上sd卡的读写权限