当前位置: 首页 > news >正文

兰州市网站建设_网站建设公司_测试上线_seo优化

codeigniter 手机网站开发,wordpress主题开发文档,ps怎么做网站模板,推荐设计网站gym103117J. Ants 题意#xff1a; n个蚂蚁在长度为1e91的木棍上#xff0c;第i个蚂蚁在ai位置上#xff0c;朝向为0/1#xff08;0表示左#xff0c;1表示右#xff09;,如果蚂蚁相遇则彼此调转方向。木棍两侧分别有厚度为a和b的墙#xff0c;蚂蚁每撞一次墙#xf…gym103117J. Ants 题意 n个蚂蚁在长度为1e91的木棍上第i个蚂蚁在ai位置上朝向为0/10表示左1表示右,如果蚂蚁相遇则彼此调转方向。木棍两侧分别有厚度为a和b的墙蚂蚁每撞一次墙墙的厚度就会减1当墙撞没时蚂蚁就会直接掉下去问最后一个蚂蚁掉下去的时间 题解 模拟题 有几点注意 蚂蚁相遇调转方向可以相当于方向没变一个蚂蚁需要撞两次墙才能回到原先的位置(墙没撞开)相当于周期为2len每个周期每只蚂蚁会对两侧的墙各撞一次所以我们可以将前面整数个周期都算完最后就剩下一轮直接模拟完事 思路很简单但是最后一轮的模拟很麻烦我和队友调了4个小时才改出来但是发现网上有很多简易的方法 我们用两个队列分别存向左向右的蚂蚁每次取出两个队列首的元素比较两个元素谁离端点更近更近的会先撞墙然后掉头加入另一个队列中直到墙撞开 代码 const int N 2e6 5;int n, a, b, p[N], d[N], L 1e9 1;LL s, ans; LL q1[N], q2[N]; int hh 1, tt, h 1, t;void inline work1() {LL u q1[hh];if (a) {a--;q2[t] u L;}else {ansmax(ans,u); } }void inline work2() {LL u q2[h];if (b){b--;q1[tt] u L;} else {ansmax(ans, u);} }int main() {read(n), read(a), read(b);for (int i 1; i n; i) read(p[i]);for (int i 1; i n; i) read(d[i]);LL tmp min(a, b) / n;a - n * tmp, b - tmp * n;s tmp * L * 2;for (int i 1; i n; i)if (d[i] 0) q1[tt] p[i];//左 for (int i n; i; i--)if (d[i] 1) q2[t] L - p[i];//右 while (hh tt || h t) {if (h t || (hh tt q1[hh] q2[h])) work1();//左边先到 else work2();}printf(%lld\n, ans s);return 0; } 我和队友的代码 就是纯模拟讨论四种情况 // Problem: Ants // Contest: NowCoder // URL: https://ac.nowcoder.com/acm/contest/17624/J // Memory Limit: 524288 MB // Time Limit: 2000 ms // // Powered by CP Editor (https://cpeditor.org)//#pragma GCC target(avx) //#pragma GCC optimize(2) //#pragma GCC optimize(3) //#pragma GCC optimize(Ofast) // created by myq #include algorithm #include cctype #include climits #include cmath #include cstdio #include cstdlib #include cstring #include iostream #include list #include map #include queue #include set #include sstream #include stack #include string #include unordered_map #include unordered_set #include vector using namespace std; typedef long long ll; #define x first #define y second typedef pairint, int pii; const int N 1000010; const int mod 998244353; #define int long long int a[N]; int d[N]; int n, l, r; signed main() {ios::sync_with_stdio(0);cin n l r;int len 1e9 1;int j 0;for (int i 1; i n; i) {cin a[i];}int lcnt 0;int rcnt 0;int res1 0;int res2 0;for (int i 1; i n; i) {cin d[i];if (!d[i])lcnt, res1 max(res1, a[i]);elsercnt, res2 max(res2, len - a[i]);}int tt min(l / n, r / n);int res 0;res 2 * len * tt;l- tt * n;r- tt * n;if (l lcnt r rcnt) {// if (n 11)// cout 1 endl;vectorint vv;vectorint vv2;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);int L (l 0 ? (vv.size() ? vv.back() : 0) : vv[l - 1] len);int R (r 0 ? (vv2.size() ? vv2[0] : 0) : vv2[(int)vv2.size() - r] len);res max(L, R);}else if (l lcnt r rcnt) {// if (n 11)// cout 2 endl;r- rcnt;vectorint vv;vectorint vv2;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);if (l) {int tmp vv[l - 1] len;int tmp2 0;int tmp3 0;if (rcnt) {tmp2 vv2[0] len;}if (r) {int tr min(r, l);tmp3 vv[tr - 1] 2 * len;}res max({tmp, tmp2, tmp3});}else {res max((vv2.size() ? vv2[0] len : 0ll), vv.back());}}else if (l lcnt r rcnt) {// if (n 11)// cout 3 endl;vectorint vv;vectorint vv2;l- lcnt;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);if (r) {int tmp 0;int tmp2 vv2[vv2.size() - r] len;int tmp3 0;if (lcnt) {tmp vv.back() len;}if (l) {int tr min(l, r);tmp3 2 * len vv2[vv2.size() - tr];}res max({tmp3, tmp, tmp2});}else {res max((vv.size() ? len vv.back() : 0ll), vv2[0]);}}else if (l lcnt r rcnt) {// if (n 11)// cout 4 endl;res len;l- lcnt;r- rcnt;lcnt 0;rcnt 0;// if(n87)// coutresendl;for (int i 1; i n; i) {a[i] len - a[i];d[i]^ 1;if (!d[i])lcnt;elsercnt;}if (l lcnt r rcnt) {// if (n 11) {// cout 41 endl;// cout l r endl;// cout lcnt rcnt endl;// }vectorint vv;vectorint vv2;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);reverse(vv.begin(), vv.end());reverse(vv2.begin(), vv2.end());// sort(vv.begin(), vv.end());// sort(vv2.begin(), vv2.end(), greaterint());// if(n87)// coutvv[l-1]len vv2[(int)vv2.size() - r] len vv.back() vv2[0]endl;int L (l 0 ? (vv.size() ? vv.back() : 0) : vv[l - 1] len);int R (r 0 ? (vv2.size() ? vv2[0] : 0) : vv2[(int)vv2.size() - r] len);res max(L, R);}else if (l lcnt r rcnt) {// if (n 11)// cout 42 endl;r- rcnt;vectorint vv;vectorint vv2;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);reverse(vv.begin(), vv.end());reverse(vv2.begin(), vv2.end());if (l) {// if(n59)// coutl r lcnt rcntendl;int tmp vv[l - 1] len;int tmp2 0;int tmp3 0;if (rcnt) {tmp2 vv2[0] len;}if (r) {int tr min(r, l);tmp3 vv[tr - 1] 2 * len;}res max({tmp, tmp2, tmp3});}else {res max((vv2.size() ? vv2[0] len : 0ll), vv.back());}}else if (l lcnt r rcnt) {if (n 11)cout 43 endl;vectorint vv;vectorint vv2;l- lcnt;for (int i 1; i n; i)if (d[i])vv2.push_back(len - a[i]);for (int i 1; i n; i)if (!d[i])vv.push_back(a[i]);reverse(vv.begin(), vv.end());reverse(vv2.begin(), vv2.end());if (r) {int tmp 0;int tmp2 vv2[vv2.size() - r] len;int tmp3 0;if (lcnt) {tmp vv.back() len;}if (l) {int tr min(l, r);tmp3 2 * len vv2[vv2.size() - tr];}res max({tmp3, tmp, tmp2});}else {res max((vv.size() ? len vv.back() : 0ll), vv2[0]);}}}cout res endl;return 0; } /** * In every life we have some trouble * When you worry you make it double * Dont worry,be happy. **/
http://www.ihoyoo.com/news/136844.html

相关文章:

  • 美美淘-专做女鞋拿货选款网站网站完整模板
  • 建立网站一般多少钱江西省城乡建设培训网 官方网站
  • 网站优化怎么做办公室装修风格效果图
  • 企业网站如何进行seo搭建网站吧
  • 网站开发试验报告住房和城乡建设部网站共有产权
  • 用lamp搭wordpress深圳博惠seo
  • H5 网站一级a做爰网站免费
  • 南山网站建设公海搜网做的网站怎么样
  • 受欢迎的网站建设wordpress icon图标
  • xx旅行社网站建设方案 企网站技术解决方案为申请虚拟主机番禺区住房和建设局物业网站
  • 网站建设哪个部门管理wordpress手机主题浮动菜单
  • 网站架构组成部分html教程pdf下载
  • 做标签网站西安建设工程信息网人员信息
  • 什么是网站建设中的目录wordpress 文章点击
  • 电子商务网站推广的意义下载站源码cms
  • 潍坊企业网站模板建站网站怎么做的支付
  • 潍坊网站建设盛鸿科技手机网站建设实验报告
  • 三大门户网站哪家做的最好属于自己的网站
  • 无锡好的网站公司网站开发 票种
  • 一起做网店类型的网站陕西汉中最新消息今天
  • 网站效果展示如何选择网站公司
  • 备案怎么关闭网站iis6.0建立网站
  • 政务咨询投诉举报网站建设去哪接单做网站
  • 深圳网站建设 响应式设计开发昆山网站优化建设
  • 东方市住房和城乡建设局网站工程接单网
  • 做代金券的网站有什么php网站
  • 网站建设 漳州优化网站用软件好吗
  • 涿州网站建设推广注册免费微网站
  • 高端网站开发方案临沂做网站建设的公司哪家好
  • 网站开发项目经理职责南通网站开发招聘