巨麻烦的模拟题orz。。。。

先确定等号的位置,然后两层dfs,分别算等号前面的和后面的,再比较

话说这题竟然不开long long都能水过

 #include <iostream>
#include<cstring>
using namespace std;
int ANS,ansx,ansy,T,l;
string s;
int nx[],ny[],ax[],ay[],a[];
int lx,ly; int calcx()
{
//ax[1..lx-1]
//nx[1..lx]
int tmpn=nx[];
int tmpa=;
for(int i=;i<=lx-;i++)
{
if(ax[i]==)
{
tmpa+=tmpn;
tmpn=nx[i+];
}
else
{
tmpn=tmpn*+nx[i+];
}
}
tmpa+=tmpn;
return tmpa;
} int calcy()
{
//ay[1..ly-1]
//ny[1..ly]
int tmpn=ny[];
int tmpa=;
for(int i=;i<=ly-;i++)
{
if(ay[i]==)
{
tmpa+=tmpn;
tmpn=ny[i+];
}
else
{
tmpn=tmpn*+ny[i+];
}
}
tmpa+=tmpn;
return tmpa;
} void dfsy(int y)
{
if(y==ly)
{
//cout<<nx[1]<<" ";
//for(int i=1;i<=lx-1;i++) cout<<char(ax[i]+'A')<<" "<<nx[i+1]<<" ";
//cout<<"----";
//cout<<ny[1]<<" ";
//for(int i=1;i<=ly-1;i++) cout<<char(ay[i]+'A')<<" "<<ny[i+1]<<" "; ansy=calcy();
//cout<<" "<<ansx<<"=="<<ansy<<" ";
if(ansy==ansx)
{
ANS++;
// cout<<" OK! ";
}
//cout<<endl;
}
else
{
ay[y]=;
dfsy(y+);
ay[y]=;
dfsy(y+);
}
} void dfsx(int x)
{
if(x==lx)
{
ansx=calcx();
dfsy();
}
else
{
ax[x]=; //add a plus after ax[x]
dfsx(x+);
ax[x]=;
dfsx(x+);
}
} int main()
{
while(cin>>s)
{
if(s=="END") break;
l=s.length();
ANS=; ansx=; ansy=;
for(int i=;i<=l;i++)
a[i]=s[i-]-'';
for(int eq=;eq<=l-;eq++) //add equal after a[eq]
{
memset(nx,,sizeof(nx));
memset(ny,,sizeof(ny));
for(int i=;i<=eq;i++) nx[i]=a[i];
lx=eq;
for(int i=eq+;i<=l;i++) ny[i-eq]=a[i];
ly=l-eq;
dfsx();
}
cout<<ANS<<endl;
} return ;
}

hdu 4403 dfs的更多相关文章

  1. HDU 5143 DFS

    分别给出1,2,3,4   a, b, c,d个 问能否组成数个长度不小于3的等差数列. 首先数量存在大于3的可以直接拿掉,那么可以先判是否都是0或大于3的 然后直接DFS就行了,但是还是要注意先判合 ...

  2. Snacks HDU 5692 dfs序列+线段树

    Snacks HDU 5692 dfs序列+线段树 题意 百度科技园内有n个零食机,零食机之间通过n−1条路相互连通.每个零食机都有一个值v,表示为小度熊提供零食的价值. 由于零食被频繁的消耗和补充, ...

  3. HDU 4403 A very hard Aoshu problem(dfs爆搜)

    http://acm.hdu.edu.cn/showproblem.php?pid=4403 题意: 给出一串数字,在里面添加一个等号和多个+号,使得等式成立,问有多少种不同的式子. 思路: 数据量比 ...

  4. HDU 4403 A very hard Aoshu problem(DFS)

    A very hard Aoshu problem Problem Description Aoshu is very popular among primary school students. I ...

  5. HDU 4403 A very hard Aoshu problem (DFS暴力)

    题意:给你一个数字字符串.问在字符串中间加'='.'+'使得'='左右两边相等. 1212  : 1+2=1+2,   12=12. 12345666 : 12+3+45+6=66.  1+2+3+4 ...

  6. HDU 5877 dfs+ 线段树(或+树状树组)

    1.HDU 5877  Weak Pair 2.总结:有多种做法,这里写了dfs+线段树(或+树状树组),还可用主席树或平衡树,但还不会这两个 3.思路:利用dfs遍历子节点,同时对于每个子节点au, ...

  7. hdu 4751(dfs染色)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=4751 思路:构建新图,对于那些两点连双向边的,忽略,然后其余的都连双向边,于是在新图中,连边的点是能不 ...

  8. HDU 1045 (DFS搜索)

    题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=1045 题目大意:在不是X的地方放O,所有O在没有隔板情况下不能对视(横行和数列),问最多可以放多少个 ...

  9. HDU 1241 (DFS搜索+染色)

    题目链接:  http://acm.hdu.edu.cn/showproblem.php?pid=1241 题目大意:求一张地图里的连通块.注意可以斜着连通. 解题思路: 八个方向dfs一遍,一边df ...

随机推荐

  1. echo使用说明,参数详解

    简介 echo [OPTION]... [STRING]... 描述 -n 末尾不加换行 -e 开启输出字串中对反斜杠的转译 -E 禁用反斜杠转译 只有开启-e参数的时候,下面的命令才能起作用: \0 ...

  2. 【LeetCode】95. Unique Binary Search Trees II

    Unique Binary Search Trees II Given n, generate all structurally unique BST's (binary search trees) ...

  3. 塔吊力矩限制器,塔吊黑匣子,塔吊电脑,tower crane

    塔机力矩限制器,tower crane 适用于各种类型的固定臂塔机和可变臂塔机 塔机力矩限制器是塔式起重机机械的安全保护装置,本产品采用32位高性能微处理器为硬件平台,软件算法采用国内最先进的三滑轮取 ...

  4. 基于canvas实现物理运动效果与动画效果(一)

    一.为什么要写这篇文章 某年某月某时某种原因,我在慕课网上看到了一个大神实现了关于小球的抛物线运动的代码,心中很是欣喜,故而写这篇文章来向这位大神致敬,同时也为了弥补自己在运动效果和动画效果制作方面的 ...

  5. SDRAM和dcfifo的联合

    SDRAM和dcfifo的联合 设计原理 在"SDRAM突发读写页"实验中,留下了一个问题,就是从SDRAM读取数据的速度要与SDRAM的驱动时钟同步,这就造成了读出的数据的速率过 ...

  6. Altera SoC与Matlab的联合---第一步 软件安装与硬件测试

    参考设计:http://cn.mathworks.com/help/hdlcoder/examples/getting-started-with-hardware-software-codesign- ...

  7. 调试记录:The public type <<classname>> must be defined in its own file

    (摘自stackoverflow) “The public type <<classname>> must be defined in its own file” error ...

  8. android服务之启动方式

    服务有两种启动方式 通过startService方法来启动 通过bindService来开启服务 布局文件 在布局文件中我们定义了四个按键来测试这两种方式来开启服务的不同 <?xml versi ...

  9. 十天冲刺---Day7

    站立式会议 站立式会议内容总结: 燃尽图 照片 两个人编码其实效率挺高的.但是在一些方面,比如说页面UI的编写,会非常吃力,很难达到自己的效果. 由于埋头在编码,所以issues的增加随之停止. 有点 ...

  10. Ceph常用维护操作

    查看ceph 集群状态 1.ssh 登陆任一MON主机 2.执行 sudo ceph health detail 命令 启动.停止.重启.查看MON进程 1.登陆到MON的服务器,执行如下命令 sud ...