A. Lever
题目:http://codeforces.com/contest/376/problem/A
题意:杠杆原理
比两边的重量
input
=^==
output
balance
9===^==1
output
left
2==^7==
right
41^52==
balance
PS:这题我大一刚来的时候做过,当时没用__int64存数据,找半天不知道错哪
今天又做了一遍又错这了,不过这回看出来了,哎,也就这点长进了!
#include<iostream>
#include<cstdio>
#include<cmath>
#include<cstdlib>
#include<cstring>
using namespace std;
#define M 1000009
char s[M];
struct node{
__int64 x;
__int64 y;
};
node p[M];
int main()
{
char a;
int i=,k=;
__int64 bal;
scanf("%c",&a);
while(a!='\n')
{
if(a=='^')
bal=i;
if(a!='^' && a!='=')
{
p[k].x=a-'';
p[k].y=i;
k++;
}
scanf("%c",&a);
i++;
}
int j;
__int64 sum=,num=;
for(j=;j<k;j++)
{
if(p[j].y<bal)
{
sum+=(bal-p[j].y)*p[j].x;
}
else
num+=(p[j].y-bal)*p[j].x;
}
if(sum==num)
printf("balance\n");
else if(sum>num)
printf("left\n");
else if(sum<num)
printf("right\n");
return ;
}