【日常】荒岛野人暴力碾正解


是这样的,我开了个2e8的bool数组暴力干了荒岛野人,一看,卧槽,我还成最优解了。

整个人给整不会了。

#include
using namespace std;
const int z = 32;
int n, ci[z], pi[z], li[z];
int maxn, mn;
bool ck[20000000];
int main() {
	scanf("%d",&n);
	for(int i = 1;i <= n;++i) {
		scanf("%d %d %d",&ci[i],&pi[i],&li[i]);
		mn = max(mn,ci[i]);
	}
	for(int i = 1;i < n;++i) 
		for(int j = i+1;j <= n;++j) {
			int tmp = ci[i]-ci[j];
			int temp = pi[i]-pi[j];
			int t = min(li[i],li[j]);
			maxn = max(maxn,abs(tmp+temp*t));
			for(int k = 1;k <= t;++k) 
				ck[abs(tmp+k*temp)] = true;
		}
	for(int i = mn;i <= 1000000;++i) {
		bool sp = false;
		for(int j = 1;i*j <= maxn;++j)
			if(ck[i*j]) {
				sp = true;
				break;
			}
		if(!sp) {
			printf("%d",i);
			break;
		}
	}
	return 0;
}