zoukankan      html  css  js  c++  java
  • Find The Multiply

    Find The Multiply poj-1426

        题目大意:给你一个正整数n,求任意一个正整数m,使得n|m且m在十进制下的每一位都是0或1。

        注释:n<=200。

          想法:看网上的题解全是bfs乱搜(其实我的做法也是bfs),我来说一说我这简单的bfs。其实这道题的精髓就在于如何考虑对于大数的处理。显然,我们可以用同余mod定理来搞定。

        最后,附上丑陋的代码... ...

     1 #include <iostream>
     2 #include <cstdio>
     3 using namespace std;
     4 long long ans[600001];
     5 int main()
     6 {
     7     int n;
     8     while(~scanf("%d",&n))
     9     {
    10         if(n==0) return 0;
    11         for(int i=1;;i++)
    12         {
    13             ans[i]=ans[i/2]*10+i%2;
    14             if(ans[i]%n==0)
    15             {
    16                 break;
    17             }
    18         }
    19         printf("%I64d
    ",ans[i]);
    20     }
    21 }

        小结:定理的充分运用才是重要的... ...

  • 相关阅读:
    Notepad++
    pycharm
    pygame游戏开发-简介
    白月黑羽Python在线教程
    Selenium Web自动化 原理
    Web自动化
    Web自动化
    转:Android开发环境搭建
    Android系统架构说明介绍
    Enjoy Android
  • 原文地址:https://www.cnblogs.com/ShuraK/p/8445643.html
Copyright © 2011-2022 走看看