HDU 3419 水搜索
来源:互联网 发布:js.com 编辑:程序博客网 时间:2024/05/01 12:43
注意几个特殊条件
然后爆搜 水
#include "stdio.h"#include "string.h"#include "math.h"#include "stdlib.h"int judge(int w){int x;int num[11];memset(num,0,sizeof(num));while (w!=0){x=w%10;if (x==0) return 1;if (num[x]==1) return 1;else num[x]=1;w/=10;}return 0;}int judgee(int a,int b,int w){int num[11],x,c;memset(num,0,sizeof(num));c=a*b;x=log10(c)+1;if (x!=w) return 1;while (a!=0){if (num[a%10]==1) return 1;else num[a%10]=1;a/=10;}while (b!=0){if (num[b%10]==1) return 1;else num[b%10]=1;b/=10;}while (c!=0){if (c%10==0) return 1;if (num[c%10]==1) return 1;else num[c%10]=1;c/=10;}return 0;}int main(){int a,b,aa,bb,j,c,sum,i,ans;int hash[10010];memset(hash,0,sizeof(hash));for (i=10;i<=9999;i++)if (judge(i)==1) hash[i]=1;while (scanf("%d%d%d",&a,&b,&c)!=EOF){if (a+b+c==0) break;if (a+b>c+1){printf("0\n");continue;}if (a>c || b>c){printf("0\n");continue;}if (a==0 || b==0 || c==0) {printf("0\n");continue;}if (a+b<c){printf("0\n");continue;}aa=1;for (i=1;i<a;i++)aa*=10;bb=1;for (i=1;i<b;i++)bb*=10;ans=0;for (i=aa;i<aa*10;i++)if (hash[i]==0)for (j=bb;j<bb*10;j++)if (hash[j]==0){if ( judgee(i,j,c)==1) continue;//printf("%d %d %d\n",i,j,i*j);ans++;} printf("%d\n",ans);}return 0;}
- HDU 3419 水搜索
- hdu 1252 水搜索
- HDU 1241 【搜索 水】
- hdu 1584 搜索水题
- hdu搜索
- hdu搜索
- hdu 4707 搜索 目前做的最水的搜索
- HDU 1704 (搜索题)
- HDU 4016 搜索
- HDU 1181 搜索
- HDU-1128 暴力搜索
- 搜索 hdu 1238
- hdu 3786 搜索
- HDU 1430 魔板 搜索
- HDU-1548(BFS搜索)
- 搜索hdu 1240
- HDU 4536 状态搜索
- hdu 2141 二分搜索
- Linux使用AWK判断文件是否是windows格式的
- ubuntu终端sudo java提示“command not found”解决办法
- 换行符引发的血案
- iOS UIKit Dynamics 系列教程之Gravity+Collision
- linux 系统的库: xxx_dev 和 xxx的世界
- HDU 3419 水搜索
- 服务器CentOS之编译环境
- android 开发 adb devices 找不到设置问题
- union数据结构的巧用-判断机器字节序
- 第一篇CSDN博客 installshield 去掉修复完成之后弹出的维修完成对话框
- 单板重启后,cinder-volume服务起不来
- 数据库连接池的原理
- OCP-1Z0-053-V12.02-421题
- shell编程范例之字符串操作