ZOJ 3782 Ternary Calculation
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemCode=3782
2014 第十一届浙江省赛 G
题目大意:格式给出算式,计算结果并输出。
题目分析:优先级要注意,另外scanf("");很好用。
code:
#include<stdio.h> int main() { int i,j,t,a,b,c,ans; char o1,o2; scanf("%d",&t); while(t--) { scanf("%d%*c%c%*c%d%*c%c%*c%d",&a,&o1,&b,&o2,&c); if((o1=='+'||o1=='-')&&(o2=='*'||o2=='/'||o2=='%')) { switch(o2) { case'*':ans=b*c;break; case'/':ans=b/c;break; case'%':ans=b%c; } switch(o1) { case'+':ans+=a;break; case'-':ans=a-ans; } } else { switch(o1) { case'+':ans=a+b;break; case'-':ans=a-b;break; case'*':ans=a*b;break; case'/':ans=a/b;break; case'%':ans=a%b; } switch(o2) { case'+':ans+=c;break; case'-':ans-=c;break; case'*':ans*=c;break; case'/':ans/=c;break; case'%':ans%=c; } } printf("%d\n",ans); } return 0; }
PS:居然1wrong!?失败……&