题解 P6483 【[COCI2010-2011#4] PARKET】

sukimo

2020-04-29 22:18:00

Solution

思路:枚举$n$(从大到小枚,保证$n$尽量大),先判断这个$n$能否置放黑色块(整除判断),再判断以当前$n$置放黑色块的情况,能否置放和数据相等的红色块,如果都满足,则输出然后跳出循环。 代码: ``` #include<bits/stdc++.h> using namespace std; int main(){ int red,black;scanf("%d%d",&red,&black); for(int i=black+red;i;i--) if(!(black%(i-2))&&((i-1)<<1)+((black/(i-2)+1)<<1)==red){ printf("%d %d",i,black/(i-2)+2);break; } return 0; } ```