问题标题: 酷町堂:3892

0
0
已解决
胡钰妍
胡钰妍
资深光能
资深光能

#include<iostream>
#include<cmath>
#include<iomanip>
#include<string>
#include<algorithm>
#include<cstdio>
bool cmp(int x,int y,int z){
if((x-z)%y==0)
    return 1;
return 0;    
}
using namespace std;
int main()
{
int na,nb,nc,cnt=0,a,b,c;
cin>>a>>b>>c>>na>>nb>>nc;
while(1){
    cnt++;
    if(cmp(cnt,na,a)&&cmp(cnt,nb,b)&&(!cmp(cnt,nc,c))||cmp(cnt,nc,c)&&cmp(cnt,nb,b)&&(!cmp(cnt,na,a))){
    cout<<cnt;
    break;
}
}
return 0;
}

哪错了


0
已采纳
荣逸乐
荣逸乐
资深守护
资深守护

主函数里的判断条件这样写:

if(z(cnt,na,a)&&z(cnt,nb,b)&&(!z(cnt,nc,c))||z(cnt,nc,c)&&z(cnt,nb,b)&&(!z(cnt,na,a))||z(cnt,nc,c)&&z(cnt,na,a)&&(!z(cnt,nb,b)))

z就是你的cmp,其他代码都没错

0
张帆
张帆
中级天翼
中级天翼

我没看懂你的代码什么意思

建议用此思路:

1.输入
2.定义三个指针变量,分别表示每种球现在抽到的编号是数字几
3.循环判断是否为二等奖,指针变量++,超过了每种球的最大编号赋值为1,cnt++
4.输出cnt

我认为用你这个思路有一个地方不对:

只判断了没有中第三种和第一种球的,为何第二种球没有中的没有判断???

 

 

 

我要回答