题目传送门:B2133 我家的门牌号 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)

我们设总门牌号之和为cnt,小明家门牌号为x,其他人门牌号之和为a(即cnt-x),得:

  1. a-2x=n
  2. a=cnt-x;

∴ n=cnt-3x

依据条件,直接暴力:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#include<cstdio>
long long int n,cnt;
int main(){
scanf("%lld",&n);
for(long long int i=1;;i++){
cnt+=i;
for(long long int j=1;j<=i;j++){
if((cnt-3*j)==n){
printf("%lld %lld",j,i);
return 0;
}
}
}
}

2022/6/22