蓝桥杯 历届试题 带分数

1.对整数部分从1~n-1进行搜索,用flag记录已经出现过的数字(!式子中不能出现0,出现给flag标记中的0赋值为1);
2.分数部分,分母一定小于分子,分母长度一定小于等于分子,即分子长度一定小于等于右边总长度的一半
#include <iostream>
#include <cstring> 
using namespace std;
#define MAX 10

bool flag[MAX],copyf[MAX];  
int n,sum,r,len;  
  
bool check(int n) 
{
	int m; 
	while(n){
		m=n%10; 
		if (flag[m]) return false;  
		flag[m]=true;  
		n/=10;  
		len++; 
	}
	return true; 
} 

bool Ans(int num,int molecule)
{
	for (int i=1;i<MAX;i++){
		copyf[i]=flag[i]; 
	} 
	int s=0,m; 
	while (molecule) 
	{
		m=molecule%10; 
		if (copyf[m]) return false; 
		copyf[m]=true;  
		s++; 
		molecule/=10;     
	} 
	 
	if (len-num==s){
		return true;
	}
	return false; 
}
  
void dfs(int num,int denominator)
{
	if (num<=len/2)
	{ 
		
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值