• Find The Multiple 二叉树 哈夫曼编码 经典,,,同余方程((a*b)%n=(a%n*b%n)%n (a+b)%n=(a%n+b%n)%n)


    Problem Description
    Given a positive integer n, write a program to find out a nonzero multiple m of n whose decimal representation contains only the digits 0 and 1. You may assume that n is not greater than 200 and there is a corresponding m containing no more than 100 decimal digits.
     
    Input
    The input file may contain multiple test cases. Each line contains a value of n (1 <= n <= 200). A line containing a zero terminates the input.
     
    Output
    For each value of n in the input print a line containing the corresponding value of m. The decimal representation of m must not contain more than 100 digits. If there are multiple solutions for a given value of n, any one of them is acceptable.
     
    Sample Input
    2
    6
    19
    0
     
    Sample Output
    10
    100100100100100100
    111111111111111111
    ***************************************************************************************************************************
    大神图片经典   领教啦!!
    ***************************************************************************************************************************
     1 #include<iostream>
     2 #include<string>
     3 #include<cstring>
     4 #include<cmath>
     5 #include<cstdio>
     6 #include<queue>
     7 using namespace std;
     8 int mod[600001],res[600001];
     9 int n,i,j,k;
    10 int cnt;
    11 int main()
    12 {
    13    while(scanf("%d",&n)&&n)
    14    {
    15       mod[1]=1%n;
    16       for(i=2;mod[i-1];i++)
    17       {
    18           mod[i]=(mod[i/2]*10+i%2)%n;//哈夫曼树,模仿双向bfs();
    19       }
    20       i--;
    21       int id=0;
    22       while(i)
    23       {
    24           res[id++]=i%2;//哈夫曼编码
    25           i/=2;
    26       }
    27       for(i=id-1;i>=0;i--)
    28         printf("%d",res[i]);
    29       printf("
    ");
    30    }
    31    return 0;
    32 }
    View Code
  • 相关阅读:
    Java SE 5.0(JDK 1.5)新特性
    第22章—开启HTTPS
    第21章—websocket
    IE8Get请求中文不兼容:encodeURI的使用
    JavaScript自定义函数
    disable的错误使用
    20190401-记录一次bug ConstraintViolationException
    new Date()的浏览器兼容性问题
    单例模式(转)
    SQL Server使用一个语句块批量插入多条记录的三种方法和union和union all区别
  • 原文地址:https://www.cnblogs.com/sdau--codeants/p/3364244.html
Copyright © 2020-2023  润新知