#include<bits/stdc++.h>
using namespace std;
int main(){
int a,i,j,m,n,k,x;
cin>>a;
for(k=1;;k++){
for(x=1;;x++){
int s=52*(7*x+21*k);
if(s==a){printf("%d\n%d",x,k);return 0;
}
if(s>a||x>100){break;
}
}
}
return 0;
}
是不是超时?
代码逻辑上没什么问题
我猜应该是测试数据太大,int溢出了吧
你换成更大的类型来存
谢谢xdm,我找到问题了,应该第九行和第十一行换一下,应先判断x<=100,再判断s==a