zoukankan      html  css  js  c++  java
  • codeforces 244B-Undoubtedly Lucky Numbers 搜索

    题意:给你一个n,求不大于n的并且仅由两种或者一种数字组成的数的个数。(有点绕,,简单点就是,看看小于等于n点数中,,有多少数字只有一种数字,或者有两种数字组成)

    “哎,自己还是太菜了,训练的时候只做出来了一个水题,自闭中.....”

    思维题刷的太少了,做题的时候总是想不到。

    思路呢就是  两个循环,遍历两个数字的组合,然后宝搜就好了;

    哎,不说了,说多了都是泪,见代码吧;

     1 #include <iostream>
     2 #include <cstdio> 
     3 #include <set> 
     4 using namespace std;
     5 typedef long long ll;
     6 const int maxn=1e5+5;
     7 int a[maxn];
     8 set<ll>ss;
     9 void dfs(int x,int y,int n,ll s,int cnt)
    10 {
    11     if(s>n||(s==0&&cnt>0))return;
    12     if(s>0)ss.insert(s);
    13     dfs(x,y,n,s*10+x,cnt+1);
    14     dfs(x,y,n,s*10+y,cnt+1);
    15 }
    16 int main()
    17 {
    18     int n;
    19     cin>>n;
    20     for(int i=0;i<=9;i++)
    21         for(int j=i+1;j<=9;j++)
    22             dfs(i,j,n,0,0);
    23     cout<<ss.size()<<endl;
    24     return 0;
    25 }
  • 相关阅读:
    1860 最大数
    1164 统计数字
    1063 合并果子
    1098 均分纸牌
    2806 红与黑
    1168 火柴棒等式
    1910 递归函数
    2774 火烧赤壁
    2017.0705.《计算机组成原理》-存储器
    2017.0704.《计算机组成原理》-动态RAM
  • 原文地址:https://www.cnblogs.com/Cherry93/p/9919520.html
Copyright © 2011-2022 走看看