zoukankan      html  css  js  c++  java
  • 猜灯谜

    A 村的元宵节灯会上有一迷题:
    
        请猜谜 * 请猜谜 = 请边赏灯边猜
    
    小明想,一定是每个汉字代表一个数字,不同的汉字代表不同的数字。
    
    请你用计算机按小明的思路算一下,然后提交“请猜谜”三个字所代表的整数即可。
    
    请严格按照格式,通过浏览器提交答案。

    注意:只提交一个3位的整数,不要写其它附加内容,比如:说明性的文字。

    答案 (10分)

    搜索判断。

    代码:

    #include <iostream>
    #include <cstdio>
    using namespace std;
    int s[6];
    bool vis[10];
    bool check() {
        int a = s[0] * 100 + s[1] * 10 + s[2];
        int b = s[0] * 100000 + s[3] * 10010 + s[4] * 1000 + s[5] * 100 + s[1];
        if(a * a == b) return true;
        return false;
    }
    void dfs(int k) {
        if(k >= 6) {
            if(check()) printf("%d%d%d
    ",s[0],s[1],s[2]);
            return;
        }
        for(int i = 0;i < 10;i ++) {
            if(!vis[i]) {
                vis[i] = true;
                s[k] = i;
                dfs(k + 1);
                vis[i] = false;
            }
        }
    }
    int main() {
        dfs(0);
    }
    import java.math.BigInteger;
    
    public class Main {
        private static int [] s = new int[6];
        private static boolean [] vis = new boolean[10];
        private static void dfs(int k) {
            if(k >= 6) {
                int d = s[0] * 100 + s[1] * 10 + s[2];
                int e = s[0] * 100000 + s[3] * 10010 + s[4] * 1000 + s[5] * 100 + s[1];
                if(d * d == e) System.out.println(s[0] + " " + s[1] + " " + s[2]);
                return;
            }
            for(int i = 0;i < 10;i ++) {
                if(!vis[i]) {
                    vis[i] = true;
                    s[k] = i;
                    dfs(k + 1);
                    vis[i] = false;
                }
            }
        }
        public static void main(String[] args) {
            dfs(0);
        }
    
    }
  • 相关阅读:
    Java 堆和栈 垃圾回收 2015/9/16
    多态 Java 2015/9/16
    学校项目过程中知识点 Java 2015/9/15 晚
    Python print输出不换行
    Windows 加载EXT分区
    RouterOS 安全模式
    RouterOS Openswan l2tp ipsec
    RouterOS 自动邮件备份脚本
    python chnroutes ROS版
    Kinect 2.0&Speech 11 中文语音控制
  • 原文地址:https://www.cnblogs.com/8023spz/p/10330743.html
Copyright © 2011-2022 走看看