AtCoder Beginner Contest 187 题解
A - Large Digits
按要求求出两个数的每位之和,进行比较即可。
时间复杂度 \(\mathcal{O}(\log(AB))\)。
B - Gentle Pairs
枚举所有点对求斜率。
时间复杂度 \(\mathcal{O}(N^2)\)。
int main() {
ios_base::sync_with_stdio(false), cin.tie(0);
int n;
cin >> n;
int x[1010], y[1010];
int cnt = 0;
for (int i = 0; i < n; ++i) {
cin >> x[i] >> y[i];
}
for (int i = 0; i < n; ++i)
for (int j = 0; j < n; ++j) {
if (i != j)
if (abs(y[i] - y[j]) <= abs(x[i] - x[j])) cnt++;
}
cout << cnt / 2 << "\n";
return 0;
}
C - 1-SAT
用两个HashSet分别存储不带!和带!的字符串的纯字符部分,求两个HashSet的交集。若有交集,则输出其中任意一个字符串;否则按要求输出satisfiable。
时间复杂度 \(\mathcal{O}(N)\)。
int main() {
ios_base::sync_with_stdio(false), cin.tie(0);
int n;
cin >> n;
string s;
unordered_set<string> s1, s2;
for (int i = 0; i < n; ++i) {
cin >> s;
if (s[0] == '!') s1.insert(s.substr(1));
else
s2.insert(s);
}
for (auto x : s1) {
if (s2.count(x)) {
cout << x << "\n";
return 0;
}
}
cout << "satisfiable\n";
return 0;
}
D - Choose Me
将所有城镇按照\(2A_i+B_i\)降序排列,然后贪心选取即可。
时间复杂度 \(\mathcal{O}(N\log N)\)。
using ll = long long;
int main() {
ios_base::sync_with_stdio(false), cin.tie(0);
int n;
cin >> n;
vector<pair<ll, ll>> towns;
ll sa = 0, sb = 0; // T,A
for (int i = 0; i < n; ++i) {
int a, b;
cin >> a >> b;
towns.emplace_back(a, b);
sa += a;
}
sort(towns.begin(), towns.end(), [](pair<ll, ll>& p, pair<ll, ll>& q) {
return p.first * 2 + p.second > q.first * 2 + q.second;
});
for (int i = 0; i < n; ++i) {
if (sa < sb) {
cout << i << "\n";
return 0;
}
sa -= towns[i].first, sb += towns[i].first + towns[i].second;
}
cout << n << "\n";
return 0;
}

AtCoder Beginner Contest 187 题解的更多相关文章
- AtCoder Beginner Contest 154 题解
人生第一场 AtCoder,纪念一下 话说年后的 AtCoder 比赛怎么这么少啊(大雾 AtCoder Beginner Contest 154 题解 A - Remaining Balls We ...
- AtCoder Beginner Contest 153 题解
目录 AtCoder Beginner Contest 153 题解 A - Serval vs Monster 题意 做法 程序 B - Common Raccoon vs Monster 题意 做 ...
- AtCoder Beginner Contest 177 题解
AtCoder Beginner Contest 177 题解 目录 AtCoder Beginner Contest 177 题解 A - Don't be late B - Substring C ...
- AtCoder Beginner Contest 184 题解
AtCoder Beginner Contest 184 题解 目录 AtCoder Beginner Contest 184 题解 A - Determinant B - Quizzes C - S ...
- AtCoder Beginner Contest 173 题解
AtCoder Beginner Contest 173 题解 目录 AtCoder Beginner Contest 173 题解 A - Payment B - Judge Status Summ ...
- AtCoder Beginner Contest 172 题解
AtCoder Beginner Contest 172 题解 目录 AtCoder Beginner Contest 172 题解 A - Calc B - Minor Change C - Tsu ...
- AtCoder Beginner Contest 169 题解
AtCoder Beginner Contest 169 题解 这场比赛比较简单,证明我没有咕咕咕的时候到了! A - Multiplication 1 没什么好说的,直接读入两个数输出乘积就好了. ...
- AtCoder Beginner Contest 148 题解
目录 AtCoder Beginner Contest 148 题解 前言 A - Round One 题意 做法 程序 B - Strings with the Same Length 题意 做法 ...
- AtCoder Beginner Contest 151 题解报告
总的来说,这次的题目比较水,然而菜菜的我并没有把所有题目都做完,话不多说,直接来干货: A:Next Alphabet 题目链接:https://atcoder.jp/contests/abc151/ ...
- AtCoder Beginner Contest 115 题解
题目链接:https://abc115.contest.atcoder.jp/ A Christmas Eve Eve Eve 题目: Time limit : 2sec / Memory limit ...
随机推荐
- 【web实验报告】实验二
一.实验目的 通过一个小型网站的开发,掌握JSP基础知识,加深对session,request,response,cookie等对象的理解,掌握其使用方法,进一步深入掌握HTML.CSS和JavaSc ...
- 【Android】【外包杯】后台管理系统 | 进度day01
外包杯官方提示:平台不要太大,只是一些小东西包括支付宝和微信小程序打开,无需安装口香糖,餐巾纸有一块屏幕,不需要很大,只需要满足顾客可以看到传播的内容打开橱窗不要有锋利边角,不要求一体,提高场景利用率 ...
- preparedStatement.setObject()为什么要这样写?
setObject就是给JDBC的SQL语句的占位符赋值的,即是下面的"?" 预编译的SQL:参数使用?作为占位符 注意:sql的参数使用?作为占位符. 如: select * f ...
- 【译】使用 GitHub Copilot 编写 Git 提交
在花费数小时修复 bug 或更新特性之后,我们开发人员最不愿意做的事情往往是仔细说明 Git 提交的内容.最新的 Visual Studio 预览版可以帮到您.使用新的生成 Git 提交消息特性来帮助 ...
- Kylin Linux Advanced Server V10 上安装 Nacos详细步骤
要在 Kylin Linux Advanced Server V10 上安装 Nacos,可以按照以下进行操作:1.安装 Java JDK:首先确保已在 Kylin Linux Advanced Se ...
- TypeScript核心基础
前言 为了方便我们直接使用脚手架让他帮我们直接编译就完事了 创建一个 Vue 应用 前提条件 熟悉命令行 已安装 16.0 或更高版本的 Node.js npm init vue@latest 这一指 ...
- Asp .Net Core 系列: 集成 CORS跨域配置
目录 什么是CORS? Asp .Net Core 种如何配置CORS? CorsPolicyBuilder类详解 注册以及使用策略三种方式 EnableCors 和 DisableCors 特性 关 ...
- Java并发(二十二)----wait notify的正确姿势
开始之前先看看,sleep(long n) 和 wait(long n) 的区别: 1) sleep 是 Thread 的静态方法,而 wait 是 Object 的方法 2) sleep 不需要强制 ...
- [Python急救站]百钱买百鸡
百钱买百鸡:一人用100元买了100只鸡,其中公鸡5元一只,母鸡3元一只,小鸡1元一只.问:公鸡.母鸡.小鸡各多少只? 程序采用穷举法. for x in range(1, 21): for y in ...
- Swagger系列:Spring Boot 2.x集成Spring Doc(Swagger 3.0)
目录 一.简介 1.SpringFox工具(不推荐) 2.SpringDoc工具(推荐) 二.集成 1.环境 1. 引入Maven依赖 2.配置SpringDocConfig(配置类方式) 3.配置S ...