NOIP2000计算器的改良
2014-03-30 00:11
483 查看
#include<iostream> #include<cstring> #include<cstdio> using namespace std; char ch[10001],al; bool neg,alp,rev; int a,b,t=1; int main(){ scanf("%s",ch+1);ch[strlen(ch+1)+1]='+'; for(int i=1;i<=strlen(ch+1);i++){ if(ch[i]=='-'||ch[i]=='+'||ch[i]=='='){ if(rev)t=-t; if((i==1||ch[i-1]=='=')&&ch[i]=='-')neg=true; else{ if(!neg) if(alp){a+=t;alp=false;t=1;} else{b+=t;t=1;} else if(alp){a-=t;alp=false;t=1;neg=false;} else{b-=t;t=1;neg=false;} if(ch[i]=='-')neg=true; } if(ch[i]=='=')rev=true; } else if(ch[i]>='0'&&ch[i]<='9'){ t=(int)(ch[i]-'0');i++; while(ch[i]>='0'&&ch[i]<='9'){ t=t*10+(int)(ch[i]-'0');i++;} i--; } else {alp=true;al=ch[i];} } if(b)printf("%c=%.3lf",al,(double)(-b)/(double)a); else printf("%c=0.000",al); return 0; }
相关文章推荐
- NOIP 2000 计算器的改良 题解
- noip2000计算器的改良 (模拟,解一元一次方程)
- 计算器的改良(NOIP2000)
- NOIP2000 计算器的改良
- [T][1]NOIP 2000 计算器的改良
- 【NOIP提高组系列】(番外)NOIP2000计算器改良
- luogu1022计算器的改良[noip2000提高组Day1 T1]
- [NOIP2000] 提高组 洛谷P1022 计算器的改良
- NOIP2000普及组 计算器的改良 Codevs1015 字符串复杂处理
- luogu1022计算器的改良[noip2000提高组Day1 T1]
- 洛谷 P1022 [NOIP2000 T4] 计算器的改良
- NOIP 2000 计算器的改良 解题报告
- noip2000-计算器的改良 2008.11.5
- 计算器的改良 2000年NOIP全国联赛普及组
- wikioi 1015 计算器的改良 普及组 2000
- [NOIP2000] 提高组 洛谷P1019 单词接龙
- 洛谷 P1017 [NOIP2000 T1] 进制转换
- rqnoj-314-[NOIP2000]方格取数-多线程dp
- NOIP 2000解题报告
- ACM 91. [NOIP2000] 方格取数(多线程dp)