K16337 - 捡石头
题目描述
小强在河边捡了 2 块漂亮的石头,他想再捡两块石头,让这 4 块石头的质量正好为 30 斤 ,并且新捡的两块石头的质量是介于前两块石头的质量之间的数字,请编程输出第 3 块和第 4 块石头的质量。
注:每个石头的重量都是整数,如果找不到合适的石头,则输出 0 0。
输入格式
输入 2 个数x和y,数与数之间以空格间隔,表示 2 块石头的质量。
输出格式
输出表示第 3 、4 块石头的质量的所有可能结果,每块石头质量的数字用空格隔开。多组结果时,按第 3 块石头质量从小到大排序分行输出。
输入输出样例
输入样例1:
1 11
输出样例1:
8 10 9 9
说明
数据范围:x ≤ y 且 1≤x,y≤28。
AC代码:
/*
*/
#include<iostream>
#include<cstdio>
#include<algorithm>
#include<cmath>
#include<cstring>
#include<sstream>
using namespace std;
typedef long long ll;
int main(){
int x,y,f=0;
cin>>x>>y;
for(int i=x+1;i<=y-1;i++){//枚举剩下的第一块石头
for(int j=x+1;j<=y-1;j++){//枚举剩下的第二块石头
if(x+y+i+j==30&&i<=j){/*如果有多组结果,按照第三块石头从小到大排。简单来说,如果第三块的石头重量不超过第四块,就输出。*/
cout<<i<<" "<<j<<endl;
f=1;//看看是否有正确答案
}
}
}
if(!f){
cout<<"0 0";//如果没有
}
return 0;
}
771

被折叠的 条评论
为什么被折叠?



