Four Operations

Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 38    Accepted Submission(s): 18

Problem Description
Little Ruins is a studious boy, recently he learned the four operations!

Now he want to use four operations to generate a number, he takes a string which only contains digits '1' - '9', and split it into 5

intervals and add the four operations '+', '-', '*' and '/' in order, then calculate the result(/ used as integer division).

Now please help him to get the largest result.

 
Input
First line contains an integer T

, which indicates the number of test cases.

Every test contains one line with a string only contains digits '1'-'9'.

Limits
1≤T≤105

5≤length of string≤20

 
Output
For every test case, you should output 'Case #x: y', where x indicates the case number and counts from 1 and y is the result.
 
Sample Input
1
12345
 
Sample Output
Case #1: 1
 
Source
 
Recommend
liuyiding

  1. /*
  2. 枚举减号,刚开始天真的以为,除数最多是两位......卡死。
  3. */
  4. #include<bits/stdc++.h>
  5. #define ll long long
  6. #define INF 0x3fffffffffffffff
  7. #define N 22
  8. using namespace std;
  9.  
  10. string op;
  11.  
  12. ll right(string s)
  13. {
  14. ll e=;
  15. int n=s.size();
  16. for(int i=;i<n;i++)
  17. e=e*+s[i]-'';
  18. //cout<<c<<" "<<d<<" "<<e<<endl;
  19. ll ans=(s[]-'')*(s[]-'')/e;
  20. return ans;
  21. }
  22.  
  23. ll left(string s)//减号左边的部分
  24. {
  25. ll cur1=,cur2=;
  26. int n=s.size();
  27. for(int i=;i<n;i++)
  28. cur1=cur1*+(s[i]-'');
  29. cur1+=s[]-'';
  30. for(int i=;i<n-;i++)
  31. cur2=cur2*+(s[i]-'');
  32. cur2+=s[n-]-'';
  33. //cout<<"max(cur1,cur2)="<<max(cur1,cur2)<<" ";
  34. return max(cur1,cur2);
  35. }
  36. ll solve(string s)
  37. {
  38. ///枚举减号
  39. ll cur=-INF,s1,s2;
  40. int n=s.size();
  41. for(int i=;i<=n-;i++)
  42. {
  43. s1=left(s.substr(,i));
  44. s2=right(s.substr(i,n-i));
  45. //cout<<s1<<" "<<s2<<endl;
  46. cur=max(cur,s1-s2);
  47. }
  48. printf("%lld\n",cur);
  49. }
  50. int t;
  51. int main()
  52. {
  53. //freopen("C:\\Users\\acer\\Desktop\\in.txt","r",stdin);
  54. scanf("%d",&t);
  55. for(int Case=;Case<=t;Case++)
  56. {
  57. printf("Case #%d: ",Case);
  58. cin>>op;
  59. solve(op);
  60. }
  61. return ;
  62. }

2016年中国大学生程序设计竞赛(杭州)1006 Four Operations的更多相关文章

  1. HDU 5937 Equation 【DFS+剪枝】 (2016年中国大学生程序设计竞赛(杭州))

    Equation Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others) Total S ...

  2. HDU 5936 Difference 【中途相遇法】(2016年中国大学生程序设计竞赛(杭州))

    Difference Time Limit: 6000/3000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total ...

  3. HDU 5943 Kingdom of Obsession 【二分图匹配 匈牙利算法】 (2016年中国大学生程序设计竞赛(杭州))

    Kingdom of Obsession Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Oth ...

  4. HDU 5938 Four Operations 【贪心】(2016年中国大学生程序设计竞赛(杭州))

    Four Operations Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)T ...

  5. HDU 5935 Car 【模拟】 (2016年中国大学生程序设计竞赛(杭州))

    Car Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submiss ...

  6. HDU 5934 Bomb 【图论缩点】(2016年中国大学生程序设计竞赛(杭州))

    Bomb Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Submis ...

  7. HDU 5933 ArcSoft's Office Rearrangement 【模拟】(2016年中国大学生程序设计竞赛(杭州))

    ArcSoft's Office Rearrangement Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K ...

  8. 2016年中国大学生程序设计竞赛(合肥)-重现赛1001 HDU 5961

    传递 Time Limit: 12000/6000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submiss ...

  9. 2016年中国大学生程序设计竞赛(合肥)-重现赛1008 HDU 5968

    异或密码 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/65536 K (Java/Others)Total Submis ...

随机推荐

  1. window10简单安装MongoDB

    文章参考 在Windows上安装MongoDB 首先,在官网下载安装包.下载地址 内容如下所示: 配置 1. 创建数据目录 E:\MongoDB\data\db 2. 配置环境变量 运行 1. 命令行 ...

  2. 程序编译没错,运行报错:无法定位程序输入点GT_BufLaserFollowRatio(这是函数)于动态链接库GTS.DLL上

    :DLL里面没有导出该函数    :DLL没放进DEBUGS文件夹 (当时的情况是这个)

  3. pdf点击超链接后返回:alt+ 向左 /向右

    pdf点击超链接后返回:alt+ 向左 /向右

  4. bzoj3209 花神的数论题 (二进制数位dp)

    二进制数位dp,就是把原本的数字转化成二进制而以,原来是10进制,现在是二进制来做,没有想像的那么难 不知到自己怎么相出来的...感觉,如果没有一个明确的思路,就算做出来了,也并不能锻炼自己的能力,因 ...

  5. AIM Tech Round 4 (Div. 2)ABCD

    A. Diversity time limit per test 1 second memory limit per test 256 megabytes input standard input o ...

  6. MongoDB数据库的安装、配置和使用

    1.下载安装包   wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.4.7.tgz 2.解压安装包   tar -zxf mo ...

  7. 使用svn控制系统的优缺点和注意事项

    1.当无法连接到中央版本库的环境下,你无法提交代码,将代码加入版本控制.公司一般是局域网,所以使用环境问题不大. 2.svn的备份要备份所有代码数据以及所有更改的版本记录. 3.svn服务端运行方式: ...

  8. HDU1201 水题

    做多了年月日,现在基本就能水过了 18岁生日 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/O ...

  9. Java web JavaScript DOM 编程

     JavaScript DOM 编程 (1).DOM概述及分类 (2).DOM结构模型:XML DOM 和 HTML DOM 关系? (3).结点,结点树,结点属性与方法? 1.DOM是什么? d ...

  10. PDO浅谈之php连接mysql

    一.首先我们先说一下什么是pdo?  百科上说 PDO扩展为PHP访问数据库定义了一个轻量级的.一致性的接口,它提供了一个数据访问抽象层,这样,无论使用什么数据库,都可以通过一致的函数执行查询和获取数 ...