zoukankan      html  css  js  c++  java
  • Division UVa725

    题意:输入一个n(2<=n<=79)

    找出是否从存在abcde/fghij=n的表达式

    直接枚举,对于每一个fghij,判断abcde,所有数字不相等就可以(每个数字都出现),但要注意枚举的范围,还有格式,格式真的头疼。

    代码如下

    #include <bits/stdc++.h>
    #define inf 0x3f3f3f3f
    #define INF 0x7fffffffffffffff
    
    typedef long long ll;
    const double PI=3.1415926535897931;
    const long long mod=1e9+7;
    const int MA= 1e7+10;
    const int ma= 2*1e5+10;
    const int few=1e3+10;
    const int maxn=1e8+10;
    using namespace std;
    //////////////////////////////////////////////
    
    int check(int a,int b)
    {
        int vis[10];
        memset(vis,0,sizeof(vis));//记录每个数字的是否出现
        if(a>98765)
            return 0;//abcde不可能大于这个数
        string str1,str2;
        str1=to_string(a);
        str2=to_string(b);
        for(int i=0; i<str1.size(); i++)
        {
            vis[str1[i]-48]=1;
        }
        for(int i=0; i<str2.size(); i++)
        {
            vis[str2[i]-48]=1;
        }
        if(b<10000)
            vis[0]=1;//4位数的话,手动加上前置0
        int sum=0;
        for(int i=0; i<10; i++)
            sum+=vis[i];
        return sum==10;//检查所有数字是否出现,即abcde和fghij所有数字不相同。
    }
    int main()
    {
        int cnt=0,n;
        while(cin>>n&&n)
        {
            if (cnt++)
                cout<<endl;
            int flag=0;
            for(int i=1234; i<99999; i++)
            {
                if(check(n*i,i))
                {
                    printf("%05d / %05d = %d
    ",i*n,i,n);
                    flag = 1;
                }
            }
            if(!flag)
            {
                printf("There are no solutions for %d.
    ",n);//蛋疼的输出格式,啊啊啊啊啊啊啊啊啊啊啊啊啊
            }
        }
        return 0;
    }
  • 相关阅读:
    Hello China最新开发进展
    虚拟软驱影像文件制作程序下载路径:http://download.csdn.net/source/738137
    Swing透明和变换
    利用Java存储过程简化数据库操作
    Hello China V1.5 源码下载地址
    防止程序重复执行的单元
    判断文件大小的函数
    TMainMenu 隐藏与显示菜单
    最简单的Delphi程序(控制台)
    测试代码
  • 原文地址:https://www.cnblogs.com/Aracne/p/12387353.html
Copyright © 2011-2022 走看看