标签:99999 int luogu char cnt2 P1022 计算器 asdf zrh
回忆一下自己AC的第一个黄题(模拟
luogu P1022
我们要解一元一次方程,我们就可以把它整理成一般形式(不一定是一般形式,只要能知道系数就行),然后直接根据公式求出来就好。
#include<bits/stdc++.h>
using namespace std;
char in[99999];
int l,r;
int deng;
char a='y';
int xs[99999],zrh[99999];
double xishu,changshu;
int cnt1,cnt2;
int main(){
cin>>in;
for(int i=0;i<strlen(in);i++){
if(in[i]=='='){
deng=i;
}
if((in[i]>'9'||in[i]<'0')&&(in[i]!='-'&&in[i]!='+'&&in[i]!='=')){
a=in[i];
// cout<<in[i]<<endl;
}
}
// cout<<a<<endl;
int asdf=0;
while(r<strlen(in)){
l=r;
asdf=0;
while(in[r]>='0'&&in[r]<='9'){
r++;
}
// cout<<l<<' '<<r<<" ";
if((r-l)>=1){
for(int i=l;i<r;i++){
asdf=asdf*10+int(in[i]-'0');
}
if(in[l-1]=='-') asdf*=-1;
if(in[r]==a){
r++;
if(l<deng) asdf*=-1;
xs[cnt1]=asdf;
xishu+=xs[cnt1];
cnt1++;
}else{
if(r>deng) asdf*=-1;
zrh[cnt2]=asdf;
changshu+=zrh[cnt2];
cnt2++;
}
}
// cout<<asdf<<endl;
r++;
}
if(in[0]==a) xishu--;
double ans;
// cout<<xishu<<endl;
ans=double(changshu/xishu);
if(ans==0) ans=0;
printf("%c=%.3f",a,ans);
return 0;
}
标签:99999,int,luogu,char,cnt2,P1022,计算器,asdf,zrh 来源: https://www.cnblogs.com/Cao-Yucong/p/12774896.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。