2024.11.25 NOIP2024模拟赛

挂了若干分。

赛时

T1

赛时开了 \(T1\),最开始都没有往正解去想,当时想着 $ \Delta y $ 是可以枚举的范围,于是我就先枚举了公差,之后再把处于同一个系中的数绑一块,然后我加了个所谓的 \(n^2\) 优化,但其实根本没用,应为肯定会覆盖 \([0,(m-1)/(n-1)]\),可以省掉一个 \(n^2\)。然后(没删反向优化),我把 \(nm\) 的部分优化成了 \(m\),然后一看时间过了一个小时,然后就润了。

其实当时我没判断上界,所以暴力分一分没拿,挂了 \(50pts\)

T2

当时慌了,先写了 \(T3\),写了个逆天的代码又耗了我 \(2h\)\(T4\) 的线段树又写了我 \(1h\),见到 \(T2\) 时只剩下了 \(5min\),连最低档的暴力多打不出来,急了,写了给显然没分的全排列做法,只能说自己的码力还需提高,不像\(隔_H壁_t某_h位_n大_t佬_d\),五分钟一颗线段树。

T3

首先一眼 \(dp\),这也是我先写它的原因,首先感觉显然有一个性质是我要尽可能得多跳,这个是 \(dp\),但转移为 \(O(n^2)\),然后我又写了个反向优化,自认为较对的转移,如下。

	for(int i=1;i<=n;i++){
		for(int j=1;j<=n;j++){
//			if(!flag[i][j])continue;
//			if(dp[pre[i][j].x1][pre[i][j].y1]>dp[pre[i][j].x2][pre[i][j].y2]){
//				fa[i][j].x=pre[i][j].x1;
//				fa[i][j].y=pre[i][j].y1;
//				dp[i][j]=dp[pre[i][j].x1][pre[i][j].y1]+1;
//				dis[i][j]=dis[pre[i][j].x1][pre[i][j].y1]+(i-pre[i][j].x1)*(i-pre[i][j].x1)+(j-pre[i][j].y1)*(j-pre[i][j].y1);
//			}
//			else{
//				if(dp[pre[i][j].x1][pre[i][j].y1]<dp[pre[i][j].x2][pre[i][j].y2]){
//					fa[i][j].x=pre[i][j].x2;
//					fa[i][j].y=pre[i][j].y2;
//					dp[i][j]=dp[pre[i][j].x2][pre[i][j].y2]+1;	
//					dis[i][j]=dis[pre[i][j].x2][pre[i][j].y2]+(i-pre[i][j].x2)*(i-pre[i][j].x2)+(j-pre[i][j].y2)*(j-pre[i][j].y2);				
//				}
//				else{
					if(dis[pre[i][j].x1][pre[i][j].y1]+(i-pre[i][j].x1)*(i-pre[i][j].x1)+(j-pre[i][j].y1)*(j-pre[i][j].y1)<dis[pre[i][j].x2][pre[i][j].y2]+(i-pre[i][j].x2)*(i-pre[i][j].x2)+(j-pre[i][j].y2)*(j-pre[i][j].y2)){
						fa[i][j].x=pre[i][j].x1;
						fa[i][j].y=pre[i][j].y1;
						dp[i][j]=dp[pre[i][j].x1][pre[i][j].y1]+1;
						dis[i][j]=minn[i-1][j-1]+(i-pre[i][j].x1)*(i-pre[i][j].x1)+(j-pre[i][j].y1)*(j-pre[i][j].y1);
					}
					else{
						fa[i][j].x=pre[i][j].x2;
						fa[i][j].y=pre[i][j].y2;
						dp[i][j]=dp[pre[i][j].x2][pre[i][j].y2]+1;	
						dis[i][j]=dis[pre[i][j].x2][pre[i][j].y2]+(i-pre[i][j].x2)*(i-pre[i][j].x2)+(j-pre[i][j].y2)*(j-pre[i][j].y2);		
					}
//				}
//			}
		}
	}

但它假了,\(RE\)了,不太理解。

\(upd \ \ on:2024.11.25\)

当时赛时想到了一个可以做 \(O(n^3)\) 的一个性质,我是期望跳得步数尽量多,然后把它转移到平面直角坐标系上,尽可能从右或上转移,但是不一定最靠右或最靠上才最小,只能说自己时间规划不合理,不要死磕题目。

T4

线段树常数太大了,直接 \(T\) 飞了。

总结

  • 不要太过自信,加上一堆反向优化。
  • 要注意常数的问题。
  • 注意好自己的时间规划,不要上头一道题写 \(2h\)
  • 不要死磕正解,想出来的假正解可能还没暴力分高。
  • 一定要对拍!!!
posted @ 2024-11-25 16:06  Air2011  阅读(43)  评论(0)    收藏  举报