#40921: 要塗的地方可以這樣算


zhoudaniel02@gmail.com (周孝倫)

學校 : 銘傳大學
編號 : 235507
來源 : [114.136.241.153]
最後登入時間 :
2025-06-30 10:24:51

只需要圈出可能會有塗到的位置(從中心擴展出time*2方形,在方形內尋找要塗的地方(要catch溢出邊界)

for(int i=0;i<t;i++) {

int x=sc.nextInt(),y=sc.nextInt(),time=sc.nextInt(),data=sc.nextInt();

for(int j=x-time;j<=x+time;j++)

for(int k=y-time;k<=y+time;k++)

try {

arr[j][k]+=Math.abs(y-k)+Math.abs(x-j)<=time?data:0;

}

catch(Exception e) {}

}