zoukankan      html  css  js  c++  java
  • ECNUOJ 2859 表达式的个数

    表达式的个数

    Time Limit:5000MS Memory Limit:65536KB
    Total Submit:47 Accepted:28

    Description 

    世情薄,人情恶,雨送黄昏花易落。晓风干,泪痕残,欲笺心事,独语斜阑。难!难!难!

    人成各,今非昨,病魂常似秋千索。角声寒,夜阑珊,怕人寻问,咽泪装欢。瞒,瞒,瞒!

    读此词思绪万千。有些事注定伤感,有些题注定简单。比如给定123456789在数字中添加+,-,或者什么都不加,会得到一个表达式,当然你肯定会算这个表达式的值。然后如果给你这个表达式的值,你会求有多少个不同的表达式能够得到这个值呢?

    Input 

    多组测试数据,每组测试数据一行,含一个整数,为表达式的值

    Output 

    输出得到这个值的不同表达式的个数。

    Sample Input 

    123456789

    12345687

    -123456789

    1241

    Sample Output 

    1
    1
    0
    3

    Source

    解题:搜索。。。ECNU的题目哥总是琢磨不透题意。。。

     1 #include <bits/stdc++.h>
     2 using namespace std;
     3 typedef long long LL;
     4 LL value;
     5 map<LL,int>mp;
     6 void dfs(LL sum,int p) {
     7     if(p > 9) {
     8         mp[sum]++;
     9         return;
    10     }
    11     LL ret = 0;
    12     for(int i = p; i <= 9; ++i) {
    13         ret = ret*10 + i;
    14         dfs(sum + ret,i + 1);
    15         if(p > 1) dfs(sum - ret,i + 1);
    16     }
    17 }
    18 int main() {
    19     ios::sync_with_stdio(false);
    20     dfs(0,1);
    21     while(cin>>value) cout<<mp[value]<<endl;
    22     return 0;
    23 }
    View Code
  • 相关阅读:
    注释
    Java三种嵌入jsp的方法
    JSP page指令
    Web应用的目录结构
    Tomcat安装和配置
    动态网页和静态网页的区别
    B/S架构与C/S架构的区别
    URL
    常用SQL查询语句
    SQL--Delete语句
  • 原文地址:https://www.cnblogs.com/crackpotisback/p/4622096.html
Copyright © 2011-2022 走看看