2022年桂林电子科技大学程序设计竞赛(同步赛)
《星露谷物语》(Stardew Valley)是一款开放式乡村模拟经营类游戏。
你可以在星露谷度过一段有趣而充实的时光,清晨起床打开电视看看近日天气预报,跟着电视节目学习制作新的料理,上午给自己的农田浇水,去牧场给小鸡喂饲料,顺手摸摸自己的小猫咪。中午找个合适的垂钓点钓两条鱼,也可以去矿洞里敲两块矿石,挥剑赶跑不怀好意的史莱姆,傍晚在小镇的酒吧和镇民们闲聊,找到自己喜欢的女孩子(或者男孩子)送一件她心仪的礼物,你看着背包里用来求婚的美人鱼吊坠,等到时机成熟的时候.......
众所周知,星露谷物语是一款很休闲的游戏,Dilhao最喜欢的做的事就是在家里照料自己的花田。Dilhao的花田有n朵花,他们整齐的排成一排,每朵花有不同的高度,第i朵花的高度为hi。这天Dilhao看着自己的花田突然犯了强迫症,他觉得这些花的高度参差不齐实在是太丑了,他希望自己的花田的高度是有序的,左边的花的高度要小于等于右边的花的高度。为了完成自己的目的,Dilhao决定斥巨资购入强力化肥,每一袋强力化肥可以让任意一段区间的花的高度+1,现在Dilhao想问问你,他最少需要买多少袋强力化肥才能让花田的高度变成单调不减的?
题解:
#include <bits/stdc++.h> #define fo(i, x, y) for (int i = int(x); i <= int(y); ++i) #define fd(i, x, y) for (int i = int(x); i >= int(y); --i) #define fi first #define se second using namespace std; using ll = long long; using pii = pair<int, int>; int main() { //freopen("t.in", "r", stdin); //freopen("t.out", "w", stdout); ios::sync_with_stdio(0); cin.tie(0); ll n, r, sx, sy; cin >> n >> r >> sx >> sy; auto checkcir = [&](ll x, ll y)->bool { return (x - sx) * (x - sx) + (y - sy) * (y - sy) <= r * r; }; auto checkrec = [&](ll x, ll y, ll xx, ll yy)->bool { return x <= sx && sx <= xx && y <= sy && sy <= yy; }; while (n--) { char c; ll x, y, w; cin >> c >> x >> y >> w; if (c == 'U') { if (checkcir(x, y) || checkcir(x, y + w) || checkrec(x - r, y, x + r, y + w)) { cout << "YES\n"; return 0; } } else if (c == 'D') { if (checkcir(x, y) || checkcir(x, y - w) || checkrec(x - r, y - w, x + r, y)) { cout << "YES\n"; return 0; } } else if (c == 'L') { if (checkcir(x, y) || checkcir(x - w, y) || checkrec(x - w, y - r, x, y + r)) { cout << "YES\n"; return 0; } } else if (c == 'R') { if (checkcir(x, y) || checkcir(x + w, y) || checkrec(x, y - r, x + w, y + r)) { cout << "YES\n"; return 0; } } } cout << "NO\n"; return 0; }
运行结果:
作者:cszcoder
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须在文章页面给出原文链接,否则保留追究法律责任的权利。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具