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

Codeforces Round 1025 (Div. 2)

Problem - A - Codeforces

查有没有人说谎,有一个必错的情况:

两个人都说输了,必有人撒谎,还有就是所有人都赢了,也是撒谎

来看代码:

#include <iostream>
#include <vector>
using namespace std;int main() 
{int t;cin >> t;while (t--){int n;cin >> n;vector<int>arr(n);int sum = 0;for (int i = 0; i < n; i++){cin >> arr[i];sum += arr[i];}if (sum == n){cout << "YES" << "\n";continue;}int flag = 1;//大于3个 滑动窗口解决if (n > 2){for (int i = 0; i < n - 2; i++){int one = arr[i];int two = arr[i + 1];int thr = arr[i + 2];//枚举过程if (one == 0 && two == 0){flag = 0;}if (two == 0 && thr == 0){flag = 0;}}}else{if (arr[0] == arr[1]){flag = 0;}}if (flag){cout << "NO" << "\n";}else{cout << "YES" << "\n";}}
}

Problem - B - Codeforces

如何躲得最好呢?

第一次切割:横切竖切有2种选择,我之前比较看谁切得多就切,但是会出错,所以我横竖都切一次,最后来比较

每次都躲中间,这个切就像二分,来看代码:

#include <iostream>
#include <vector>
using namespace std;int main() 
{int t;cin >> t;int sum = 0;while (t--){sum++;int a, b, c, d;cin >> a >> b >> c >> d;//第一次判断 横切还是竖切int height = max(a - c, c - 1);int broad = max(b - d, d - 1);int left = 0;int right = a - 1-height;int count1 = 0;while (left < right) {int mid = (left + right) >> 1;right = mid;count1++;}right = b - 1;while (left < right) {int mid = (left + right) >> 1;right = mid;count1++;}left = 0;right = a - 1;int count = 0;while (left < right) {int mid = (left + right) >> 1;right = mid;count++;}right = b - 1 - broad;while (left < right) {int mid = (left + right) >> 1;right = mid;count++;}cout << min(count1,count)+1 << "\n";}
}

看看错误代码:

#include <iostream>
#include <vector>
using namespace std;int main() 
{int t;cin >> t;while (t--){int a, b, c, d;cin >> a >> b >> c >> d;//第一次判断 横切还是竖切int height = max(a - c, c - 1);int broad = max(b - d, d - 1);//如果是横切if (height * b > broad * a){a -= height;}else{b -= broad;}int left = 0;int right = a - 1;int count = 0;while (left < right) {int mid = (left + right) >> 1; right = mid; count++;}right = b - 1;while (left < right) {int mid = (left + right) >> 1;  right = mid;  count++;}cout << count+1 << "\n";}
}

相关文章:

  • C++哈希
  • 数据结构 --- 顺序表
  • grid网格布局
  • Linux基础开发工具
  • 委托从入门到入土
  • Vscode 解决 #include <> 找不到的问题
  • Android 异步编程中协程的完整实战示例
  • CppCon 2014 学习第1天:An SQL library worthy of modern C++
  • 安全访问 std::tuple 的容错方法及气象领域应用
  • 数据库中常见的锁机制详解
  • 包会!在Linux上用bcc运行第一个eBPF程序
  • 安装 Node.js 和配置 cnpm 镜像源
  • 详细到用手撕transformer上半部分
  • qt结构化绑定的重大缺陷:只能创建局部变量
  • Vue-Router 动态路由的使用和实现原理
  • 【畅想7s 快捷ICON】在手机桌面添加一张图片的快捷
  • Redis 延迟队列
  • 电脑如何保养才能用得更久
  • AI 眼镜新纪元:贴片式TF卡与 SOC 芯片的黄金组合破局智能穿戴
  • Axure设计案例——科技感立体柱状图
  • 网站建设公司咋样/湘潭seo培训
  • 西安做网站那家好/教育培训网站
  • 新乡定制网站建设公司/厦门谷歌seo
  • 宿迁西楚房产网/关键词优化排名首页
  • 域名如何申请/黄山搜索引擎优化
  • 做兼职打字员的网站/百度搜索推广