资讯动态

2025.7.22 测试 总结

发布时间:2026/10/27 1:18:42 来源:尧图企业网站定制
From nfls 2025 Summer Camp S+题目后的括号( a , b ) (a,b)(a,b)表示 (难度,考场思考率)目录T3 矩形坑洞覆盖 (easy+,80%)T4 ABBA替换(mid-,60%)T5 [POI 2005] SAM-Toy Cars(mid-,95%)T7 [SCOI2006] zh_tree(mid+,40%)T8 CF627D Preorder Test (mid+,5%)总结T3 矩形坑洞覆盖 (easy+,80%)link题意有一个长为h o l e H holeHholeH宽为h o l e W holeWholeW的矩形洞口。给定n nn块木板( h i , w i ) (h_i,w_i)(hi​,wi​),木板之间可以重叠,叠木板时允许木板旋转90 ° 90°90°,但最终放置时必须与坑洞的边平行。选的每块木板的四个角点必须严格位于坑洞边界之外(即不允许任何角点接触坑洞边界)。求完全覆盖洞口所需的最小木板数,无解则− 1 -1−1。1 ≤ n ≤ 50 , 1 ≤ h o l e H , h o l e W , h i , w i ≤ 10 9 1 \le n \le 50 , 1 \le holeH,holeW,h_i,w_i \le 10^91≤n≤50,1≤holeH,holeW,hi​,wi​≤109思路手玩多组样例可得一个贪心结论:横向和纵向如果各使用一部分木板是没有意义的,所以只考虑全是横向或者全是纵向排列的情况。于是直接模拟即可。反思场上有点看错题了。(-40pts)太久忘记贪心了。代码#includebits/stdc++.husingnamespacestd;constintmaxn=55;inth[maxn],w[maxn];structNODE{intx,y;}a[maxn];intmain(){inthh,ww,n;cinhhwwn;for(inti=1;i=n;i++)cina[i].x;cinn;for(inti=1;i=n;i++)cina[i].y;inthm=0,wm=0;for(inti=1;i=n;i++){if(a[i].xhha[i].yhh)w[++wm]=max(a[i].x,a[i].y);elseif(a[i].xhh)w[++wm]=a[i].y;elseif(a[i].yhh)w[++wm]=a[i].x;if(a[i].xwwa[i].yww)h[++hm]=max(a[i].x,a[i].y);elseif(a[i].xww)h[++hm]=a[i].y;elseif(a[i].yww)h[++hm]=a[i].x;}sort(w+1,w+wm+1,[](inta,intb){returnab;});intans

读完文章,也想定制专属网站?

尧图设计师 24 小时内与您沟通定制方案

免费获取报价 →
↑