読者です 読者をやめる 読者になる 読者になる

メモ

yukicoderで遊んでいる競プロゆるふわ勢

yukicoder No.112 ややこしい鶴亀算

問題はこちら
No.112 ややこしい鶴亀算 - yukicoder

与えられたa[i]たちを全て合計すると、全員の足の数のN-1倍になる
(∵全員が自分以外のN-1人に数えられるため)
よってこれにより普通の鶴亀算に帰着することができた

int main(){
	int n,m,x,s=0;
	scanf("%d",&n);
	m=n;
	while(m--){
		scanf("%d",&x);
		s+=x;
	}
	s/=(n-1)*2;
	printf("%d %d",2*n-s,s-n);
	//n匹で2s本の足なら鶴が2n-s、亀がs-nである
	return 0;
}

ということで、最初の読み飛ばしを工夫して縮めるだけ

n,s;
main(x){
	for(;~scanf("%d",&x);)s+=x*!!n++;
	s/=n--*2-4;
	n=!printf("%d %d",2*n-s,s-n);
}

86B