• 历届试题 带分数


    /*
    历届试题 带分数
    
    问题描述
    
    100 可以表示为带分数的形式:100 = 3 + 69258 / 714。
    
    还可以表示为:100 = 82 + 3546 / 197。
    
    注意特征:带分数中,数字1~9分别出现且只出现一次(不包含0)。
    
    类似这样的带分数,100 有 11 种表示法。
    输入格式
    
    从标准输入读入一个正整数N (N<1000*1000)
    输出格式
    
    程序输出该数字用数码1~9不重复不遗漏地组成带分数表示的全部种数。
    
    注意:不要求输出每个表示,只统计有多少表示法!
    样例输入1
    100
    样例输出1
    11
    样例输入2
    105
    样例输出2
    6
    
    */
    import java.util.Scanner;
    
    public class Main {
        public static void main(String args[]) {
            Scanner sc = new Scanner(System.in);
            int n = sc.nextInt();
            sc.close();
            int count = 0;
            for (int i = 1; i < n; i++) {
                if (!check(i + ""))
                    continue;
                for (int j = 1; j < 3500; j++) {
                    int b = j * (n - i);
                    String s = "" + b + j + i;
                    if (s.length() != 9 || !check(s))
                        continue;
                    count++;
                }
            }
            System.out.println(count);
        }
    
        static boolean check(String s) {
            char a[] = s.toCharArray();
            for (int i = 0; i < a.length - 1; i++)
                for (int j = i + 1; j < a.length; j++)
                    if (a[j] == '0' || a[i] == a[j])
                        return false;
            return true;
        }
    }
  • 相关阅读:
    linux系统中批量对一类文件重命名
    hdu4751 Divide Groups
    tyvj1614 魔塔魔塔!
    noip2012 疫情控制
    黄学长模拟day1 大逃亡
    黄学长模拟day1 球的序列
    黄学长模拟day1 某种密码
    约瑟夫问题及其变形
    秦皇岛 I 题
    暴力搜索 + 剪枝
  • 原文地址:https://www.cnblogs.com/Alpharun/p/8623770.html
Copyright © 2020-2023  润新知