DFS 水题 Help Dexter
来源:互联网 发布:免费刷空间人气软件 编辑:程序博客网 时间:2024/06/01 12:13
入以整数T(≤300)开始,表示测试用例数。
每种情况从两个整数开始:p q(1≤p,q≤17)。
输出
对于每种情况,首先打印案例编号。那么你必须找到两个整数(最小和最大),它们有p位,可以被2的q次方整除。整数应该只包含1和2。如果没有找到结果,打印“不可能”。如果只有一个整数,则打印该整数。否则打印由单个空格分隔的两个整数(首先是最小的一个,然后是最大的)。
样例输入
3
2 2
2 1
2 3
样例输出
案例1:12
情况2:12 22
每种情况从两个整数开始:p q(1≤p,q≤17)。
输出
对于每种情况,首先打印案例编号。那么你必须找到两个整数(最小和最大),它们有p位,可以被2的q次方整除。整数应该只包含1和2。如果没有找到结果,打印“不可能”。如果只有一个整数,则打印该整数。否则打印由单个空格分隔的两个整数(首先是最小的一个,然后是最大的)。
样例输入
3
2 2
2 1
2 3
样例输出
案例1:12
情况2:12 22
情况3:不可能
思路:DFS,1.需要注意下用long long
2.符合情况的可能性较多,所以可以将存储符合条件的数组大些
#include <cstdio>#include <cstring>#include <cmath>#include <algorithm>using namespace std;typedef long long ll;ll k,num[10000005],mul;int t,p,q;void DFS(ll cnt,ll sum){ sum=sum*10+1; cnt++; //printf("%lld %lld\n",cnt,sum); if(cnt==p){ if(sum%mul==0){ num[k++]=sum; } } else{ DFS(cnt,sum); } cnt--; sum=sum/10; sum=sum*10+2; cnt++; //printf("%lld %lld\n",cnt,sum); if(cnt==p){ if(sum%mul==0){ num[k++]=sum; return ; } } else{ DFS(cnt,sum); }}int main(){ scanf("%d",&t); for(int icase=1;icase<=t;icase++) { scanf("%d%d",&p,&q); k=1; mul=(ll)pow(2,q); DFS(0,0); k--; sort(num+1,num+k+1); printf("Case %d: ",icase); if(k==0) printf("impossible\n"); else if(k==1) printf("%lld\n",num[1]); else if(k>=2) printf("%lld %lld\n",num[1],num[k]); } return 0;}
阅读全文
0 0
- DFS 水题 Help Dexter
- Help Dexter(DFS)
- Help Dexter
- Help Dexter
- UVA - 11384 Help is needed for Dexter 水题
- UVA11384-Help is needed for Dexter-水题/贪心
- Help is needed for Dexter
- Help is needed for Dexter
- Help Is needed for Dexter
- Help is needed for Dexter
- Help is needed for Dexter
- UVA 11384 - Help is needed for Dexter
- uva 11384 Help is needed for Dexter
- Uva-11384-Help is needed for Dexter
- UVA 11384 - Help is needed for Dexter
- UVA 11384 Help is needed for Dexter
- 11384 - Help is needed for Dexter
- UVA 11384 - Help is needed for Dexter
- PAT---1001. A+B Format(调试过程)
- 我的Mini-Shell
- Servlet
- java se TCP服务端,客户端例子
- Python安装numpy、matplotlib库
- DFS 水题 Help Dexter
- SSM框架下使用JSR进行数据进行时的400问题
- 你真的会写单例模式吗——Java实现
- 简单的Junit和Maven结合应用(Maven项目怎么进行Junit单元测试以及常见问题解决方法)
- js正则表达式的使用详解
- js的数组知识之深入理解map和reduce
- 一个选择离职的夜晚有感
- numpy基础——numpy.argsort
- 安卓常见控件