UVA 725
题意:0~9十个数组成两个5位数(或0开头的四位数),要求两数之商等于输入的数据n。abcde/fghij=n。
思路:暴力枚举,枚举fghij的情况算出abcde判断是否符合题目条件。(注意前导零的判断)
枚举的方法为 for(int i=1234;i<=100000/n;i++){} 
#include<cstdio>
#include<cstring>
int num[];
bool check(int a,int b) {
memset(num,,sizeof num);
if(b>) return false;
if(a<) num[]++;
if(b<) num[]++;
while(a) {
num[a%]++;
a/=;
}
while(b) {
num[b%]++;
b/=;
}
for(int i=;i<;i++) {
if(num[i]>) return false;
}
return true;
}
int main() {
int n,cnt=;
while(~scanf("%d",&n),n!=) {
if(cnt>) printf("\n");cnt++;
int flag=;
for(int i=;i<=/n;i++) {
if(check(i,i*n)) {
flag=;
printf("%05d / %05d = %d\n",i*n,i,n);
}
}
if(flag==) printf("There are no solutions for %d.\n",n);
}
return ;
}
 
 
UVA 10976
题意:输入正整数k,找到所有的正整数x>=y使得1/k=1/x+1/y;
思路:枚举x,y,考虑枚举范围,因为x>=y,1/x<=1/y,所以y<=2k。在k+1到2k范围内枚举y,计算出对应的x。
#include<cstdio>
int res[][];
int main() {
int k;
while(~scanf("%d",&k)) {
int x,y;
int cnt=;
for(y=k+;y<=*k;y++) {
if((k*y)%(y-k)==) {
x=(k*y)/(y-k);
res[cnt][]=x;res[cnt++][]=y;
}
}
printf("%d\n",cnt);
for(int i=;i<cnt;i++) {
printf("1/%d = 1/%d + 1/%d\n",k,res[i][],res[i][]);
}
}
return ;
}
枚举:根据题目条件,可以缩小枚举的范围,枚举某个数,算出另个数判断是否符合条件。

UVA 725 UVA 10976 简单枚举的更多相关文章

  1. UVA 725 division【暴力枚举】

    [题意]:输入正整数n,用0~9这10个数字不重复组成两个五位数abcde和fghij,使得abcde/fghij的商为n,按顺序输出所有结果.如果没有找到则输出“There are no solut ...

  2. 暴力枚举 UVA 725 Division

    题目传送门 /* 暴力:对于每一个数都判断,是否数字全都使用过一遍 */ #include <cstdio> #include <iostream> #include < ...

  3. UVA - 10167 - Birthday Cake (简单枚举)

    思路:简单枚举 AC代码: #include <cstdio> #include <cstring> #include <iostream> #include &l ...

  4. uva 725 Division(暴力模拟)

    Division 紫书入门级别的暴力,可我还是写了好长时间 = = [题目链接]uva 725 [题目类型]化简暴力 &题解: 首先要看懂题意,他的意思也就是0~9都只出现一遍,在这2个5位数 ...

  5. 除法(Division ,UVA 725)-ACM集训

    参考:http://www.cnblogs.com/xiaobaibuhei/p/3301110.html 算法学到很弱,连这么简单个问题都难到我了.但我偏不信这个邪,终于做出来了.不过,是参照别人的 ...

  6. uva 725 Division(除法)暴力法!

    uva 725  Division(除法) A - 暴力求解 Time Limit:3000MS     Memory Limit:0KB     64bit IO Format:%lld & ...

  7. UVA.12716 GCD XOR (暴力枚举 数论GCD)

    UVA.12716 GCD XOR (暴力枚举 数论GCD) 题意分析 题意比较简单,求[1,n]范围内的整数队a,b(a<=b)的个数,使得 gcd(a,b) = a XOR b. 前置技能 ...

  8. UVA.725 Division (暴力)

    UVA.725 Division (暴力) 题意分析 找出abcdefghij分别是0-9(不得有重复),使得式子abcde/fghij = n. 如果分别枚举每个数字,就会有10^10,肯定爆炸,由 ...

  9. UVA 1508 - Equipment 状态压缩 枚举子集 dfs

    UVA 1508 - Equipment 状态压缩 枚举子集 dfs ACM 题目地址:option=com_onlinejudge&Itemid=8&category=457& ...

随机推荐

  1. grid++report中篇

    QQ:1187362408 欢迎技术交流和学习 grid++report中篇(grid++report): TODO: 1.grid++report:简单介绍( Grid++Report 是一款高性能 ...

  2. Sublime Text 3 插件建议

  3. CKEDITOR 3.4.2中 按钮事件中 动态改变图标和title 获取按钮

    this.uiItems[0].className="cke_button_hui_position_type";this.uiItems[0].title="zhang ...

  4. 【BZOJ4624】农场种植 FFT

    [BZOJ4624]农场种植 Description 农夫约翰想要在一片巨大的土地上建造一个新的农场. 这块土地被抽象为个 R*C 的矩阵.土地中的每个方格都可以用来生产一种食物:谷物(G)或者是牲畜 ...

  5. 本地代码推送到github仓库

    git 初始化 cd 到需要提交的项目目录下,执行git init 配置用户名和邮箱 git config --global user.name "codingID" git co ...

  6. 手动爬虫之报头及代理封装类(python3)

    本人刚刚学习爬虫,见每次都需要添加报头比较繁琐,故将该过程封装为Url_ProxyHelper类,代码如下 import urllib.request as ur class Url_ProxyHel ...

  7. Linux磁盘分区的理解

    磁盘分割: 一块磁盘可以被分割为多个分区artition. 磁盘链接的方式 正常的实体机使用的都是/dev/sd[a-]的硬盘档名 虚拟机可能会使用/dev/vd[a-p]这种装置档名 SATA/US ...

  8. IO流入门-第四章-FileReader

    FileReader基本用法和方法示例 /* java.io.Reader java.io.InputStreamReader 转换流(字节输入流---->字符输入流) java.io.File ...

  9. Python菜鸟之路:Django 文件上传的几种方式

    方式一:通过form表单中,html input 标签的“file”完成 # 前端代码uoload.html <form method="post" action=" ...

  10. MySQL数据库的设计和表创建

    首先,我们使用Navicat Premium编辑器创建一个用户,同时设置用户权限,MySQL默认有一个root用户,拥有最高权限 下面,我们先创建一个用户: ①CREATE USER  'aaa'@' ...