• ural1057 Amount of Degrees


    链接

    这题有一点小坑点 就是AX^B  A只能为0或者1  ,剩下的就比较好做的了。

     1 #include <iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 #include<stdlib.h>
     6 #include<vector>
     7 #include<cmath>
     8 #include<queue>
     9 #include<set>
    10 using namespace std;
    11 #define N 100000
    12 #define LL long long
    13 #define INF 0xfffffff
    14 const double eps = 1e-8;
    15 const double pi = acos(-1.0);
    16 const double inf = ~0u>>2;
    17 LL dp[35][35][11];
    18 int d[35];
    19 LL dfs(int i,int e,int k,int b)
    20 {
    21     if(i==-1)
    22     return k==0;
    23     if(!e&&dp[i][k][b] != -1) return dp[i][k][b];
    24     int mk = e?d[i]:1;
    25     int ans = 0;
    26     mk = min(1,mk);
    27     for(int j = 0 ;j <= mk ;j++)
    28     {
    29         if(k-j>=0)
    30         {
    31             ans+=dfs(i-1,e&&j==d[i],k-j,b);
    32         }
    33     }
    34     return e?ans:dp[i][k][b] = ans;
    35 }
    36 LL cal(int x,int k,int b)
    37 {
    38     int g = 0;
    39     while(x)
    40     {
    41         d[g++] = x%b;
    42         x/=b;
    43     }
    44     return dfs(g-1,1,k,b);
    45 }
    46 int main()
    47 {
    48     int x,y,k,b;
    49     memset(dp,-1,sizeof(dp));
    50     while(cin>>x>>y)
    51     {
    52         cin>>k>>b;
    53         cout<<cal(y,k,b)-cal(x-1,k,b)<<endl;
    54     }
    55     return 0;
    56 }
    View Code
  • 相关阅读:
    Go 模板
    使用Go开发web服务器
    CLI:使用Go开发命令行应用
    MyBatis 注解使用动态SQL
    Tomcat 使用Redis存储Session
    [翻译] java NIO Buffer
    [翻译] java NIO Channel
    [翻译]java nio 概述
    [翻译] java NIO 教程---介绍
    接口的定义常量与使用
  • 原文地址:https://www.cnblogs.com/shangyu/p/3683040.html
Copyright © 2020-2023  润新知