选择我自己的算法
2015-09-03 21:40
465 查看
http://codevs.cn/problem/1268/
几个数在一定的步骤后得出目标要求的数,用dfs的浪费的时间较多,用bfs没有必要因为计算的数的个数是一定的,从目标数值出发,除以某个数或者减去某个数。题目没有难为人没有讨论计算符号的优先级。
几个数在一定的步骤后得出目标要求的数,用dfs的浪费的时间较多,用bfs没有必要因为计算的数的个数是一定的,从目标数值出发,除以某个数或者减去某个数。题目没有难为人没有讨论计算符号的优先级。
#include<iostream> #include<stdio.h> #include<cmath> #include<string.h> #include<map> #include<queue> #include<algorithm> using namespace std; int cunshu[10]={0}; bool chuli(int temptemp,int k) { if(k==0) { if(temptemp<=9) { if(cunshu[temptemp]==1) return true; else return false; }else return false; } for(int i=0;i<=9;i++) { if(cunshu[i]==1) { if(chuli(temptemp-i,k-1)) return true; } } for(int i=1;i<=9;i++) { if(cunshu[i]==1) { if(temptemp%i==0) { if(chuli(temptemp/i,k-1)) return true; } } } if(temptemp==0) { if(cunshu[0]==1) { return true; } } return false; } int main() { int cishu; int mubiaogeshu; int mubiaozhi; int shuzhigeshu; int temp; cin>>cishu>>shuzhigeshu; for(int i=0;i<shuzhigeshu;i++) { cin>>temp; cunshu[temp]=1; } cin>>mubiaogeshu; for(int j=0;j<mubiaogeshu;j++) { cin>>mubiaozhi; if(chuli(mubiaozhi,cishu)) { cout<<"Y"<<endl; }else { cout<<"N"<<endl; } } return 0; }
相关文章推荐
- HDU 4737 A Bit Fun(2013成都网络赛)
- 硬链接与软链接的缠绵
- C++中vector用法
- VS 中捕获内存泄露
- 插入排序
- uva 11019 Matrix Matcher (ac自动机二维匹配)
- 继承简单案例
- hdu 3746 Cyclic Nacklace(KMP)
- 在ubuntu上安装nodebb
- Objective-C 【Category-非正式协议-延展】
- Objective-C 【Category-非正式协议-延展】
- Android四大组件之Activity
- String常见题分析
- 冒泡排序2.0
- javascript组件化
- HDU 3650 Hot Expo(气球染色 , 贪心 )
- [Oracle] Transporting Tablespace
- 【转】Python3.x移除了callable内建函数
- zoj3777(状态压缩)
- HDU 3650 Hot Expo(气球染色 , 贪心 )