社区讨论

写半天还是寄!

B3641EXTRA 方程求解参与者 9已保存回复 23

讨论操作

快速查看讨论及其快照的属性,并进行相关操作。

当前回复
23 条
当前快照
1 份
快照标识符
@lo8r4yxd
此快照首次捕获于
2023/10/27 23:12
2 年前
此快照最后确认于
2023/10/27 23:12
2 年前
查看原帖
CPP
#include<bits/stdc++.h>
using namespace std;
int x,y,s,sx,sy,xx,yy,ss;
char c,c1,c2,c3,c4,cc;
bool f;
int main(){
	scanf("%dx%c%dy=%d",&x,&c1,&y,&s);
	if(x==0) x=1;
	if(y==0) y=1;
	scanf("%dx%c%dy=%d",&xx,&c2,&yy,&ss);
	if(xx==0) xx=1;
	if(yy==0) yy=1;
	cout<<x<<" "<<y<<" "<<s<<endl;
	cout<<xx<<" "<<yy<<" "<<ss<<endl;
	for(int i=-100;i<=100;i++){
	    for(int j=-100;j<=100;j++){
	        if(c1=='+'&&c2=='+'){
	            if(x*i+y*j==s&&xx*i+yy*j==ss){
	                sx=i;
	                sy=j;
	                f=1;
	                break;
	            }
	        }
	        else if(c1=='-'&&c2=='-'){
	            if(x*i-y*j==s&&xx*i-yy*j==ss){
	                sx=i;
	                sy=j;
	                f=1;
	                break;
	            }
	        }
	        else if(c1=='-'&&c2=='+'){
	            if(x*i-y*j==s&&xx*i+yy*j==ss){
	                sx=i;
	                sy=j;
	                f=1;
	                break;
	            }
	        }
	        else{
	            if(x*i+y*j==s&&xx*i-yy*j==ss){
	                sx=i;
	                sy=j;
	                f=1;
	                break;
	            }
	        }
	    }
	    if(f==1) break;
	}
    cout<<sx<<endl<<sy;
}

就是第一样例过不了我不知道如果在只有x和y时怎么输入、、、

回复

23 条回复,欢迎继续交流。

正在加载回复...