swost OJ 2469: C 小Y的难题(1)
2016-04-23 13:29
253 查看
Description
近期小Y迷上了数学,总是在思考各种数学问题。有一天,他不小心把墨水洒在草稿纸上。他如今能看到的是“2?3?1?4”(?表示看不清的地方)。小Y的记忆力不错,他知道: 1、每一个?仅仅会是“+”、“-”,“=”三个符号之中的一个。 2、总共同拥有且仅有一个“=”。 3、原式一定是一个等式。如“2+3-1=4” 如今他突然想知道,有多少种可能性,满足上面3个要求。
Input
多组输入。 每组第一行有一个数字n。表示小Y从左到右,一共能够看到n个数字。(2<=n<=15) 每组第二行有n个数字。分别表示这n个数字是什么。保证每一个数字都是非负整数,且小于10^7。
Output
对于每组,输出一行,这一行仅仅有一个数字,表示有多少种可能性满足题意。
Sample
Input
4 2 3 1 4 4 1 1 1 1
Sample
Output
2 6
#include<stdio.h> int map[30],n,ans; void DFS(int sum,int count,int count1) //count1记录的是等式的减号,有多少个减号就有多少种=号可以达到目标 { if(count>n) return; if(sum==0&&count==n) ans+=count1; DFS(sum+map[count],count+1,count1); DFS(sum-map[count],count+1,count1+1); } int main() { while(scanf("%d",&n)!=EOF) { ans=0; for(int i=0;i<n;i++) scanf("%d",&map[i]); DFS(map[0],1,0); printf("%d\n",ans); } }
相关文章推荐
- Pragmatic eBook 介绍 :Test-Driving JavaScript Applications
- 分布式技术一周技术动态 2016-04-24
- 第九周项目一 写出程序的运行结果并理解(2)
- LeetCode 318. Maximum Product of Word Lengths(最大单词长度乘积)
- IOS-KVO、KVC
- 文件ajax 上传
- 程序人生:软件人才需具备de基本素质
- Android-ContentProvider使用
- LuManager图文安装使用教程和创建MysqL快速建站基本教程
- Eclipse背景颜色修改
- JS匿名函数之调用
- CentOS 7.0 上安装和配置 VNC 服务器
- 在Java中使用多线程结合断点续传实现一个简单的文件下载器
- 定义不对domain类的hashCode和domain的PO注释引起的mysql内存泄露
- ios之"performSelector may cause a leak because its selector is unknown"警告原因及其解决办法
- 《CSS3实战》笔记--溢出文本省略:text-overflow和文本换行显示:word-wrop
- CarPlay wired(USB)连接方案
- UVA - 401 Palindromes
- 鼠标滑轮滚动事件
- 返回一个临时变量的右值引用,那么临时对象什么时候释放?