比赛链接:https://atcoder.jp/contests/abc164

A - Sheep and Wolves

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main() {
  4. int s, w; cin >> s >> w;
  5. cout << (w >= s ? "unsafe" : "safe");
  6. }

B - Battle

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main() {
  4. int a, b, c, d; cin >> a >> b >> c >> d;
  5. int c1 = c / b + (c % b > 0);
  6. int c2 = a / d + (a % d > 0);
  7. cout << (c1 <= c2 ? "Yes" : "No");
  8. }

C - gacha

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int main() {
  4. int n; cin >> n;
  5. set<string> st;
  6. for (int i = 0; i < n; i++) {
  7. string s; cin >> s;
  8. st.insert(s);
  9. }
  10. cout << st.size();
  11. }

D - Multiple of 2019

题意

求一个至多长为 200000 的只包含 1 ~ 9 的字符串中有多少连续子串转为 10 进制后为 2019 的倍数。

思路

始终以字符串右端为起点向左扩展得到一系列整数: $x_i = s_i*10^{i}\ +\ s_{i-1}*10^{i-1}\ +\ ...\ +\ s_{0}10^0$,将 x 对 2019 取模,如果有两个 x 同余,则两个 x 之间的数,即二者之差一定为 2019 的倍数,用一个数组记录每个余数之前出现的次数,每个 x 与之前同余的数间都可以构成 2019 的倍数,如果余数为 0 则 x 本身就可以作为 2019 的倍数,所以 cnt[0] 初始化为 1 。

  1. #include <bits/stdc++.h>
  2. using namespace std;
  3. int cnt[2019];
  4. int main() {
  5. string s; cin >> s;
  6. int ans = 0, now = 0, p = 1;
  7. cnt[0] = 1;
  8. for (int i = s.size() - 1; i >= 0; i--) {
  9. now = (now + (s[i] - '0') * p) % 2019;
  10. ans += cnt[now]++;
  11. p = p * 10 % 2019;
  12. }
  13. cout << ans;
  14. }

AtCoder Beginner Contest 164的更多相关文章

  1. Atcoder Beginner Contest 164 E Two Currencies(拆点+最短路)

    题目链接 题意:有 \(n\) 个城市,它们由 \(m\) 条双向道路连接,保证它们能够彼此到达.第 \(i\) 条道路连接 \(u_i,v_i\),需要花费 \(x_i\) 个银币,耗费 \(t_i ...

  2. AtCoder Beginner Contest 100 2018/06/16

    A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...

  3. AtCoder Beginner Contest 052

    没看到Beginner,然后就做啊做,发现A,B太简单了...然后想想做完算了..没想到C卡了一下,然后还是做出来了.D的话瞎想了一下,然后感觉也没问题.假装all kill.2333 AtCoder ...

  4. AtCoder Beginner Contest 053 ABCD题

    A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...

  5. AtCoder Beginner Contest 136

    AtCoder Beginner Contest 136 题目链接 A - +-x 直接取\(max\)即可. Code #include <bits/stdc++.h> using na ...

  6. AtCoder Beginner Contest 137 F

    AtCoder Beginner Contest 137 F 数论鬼题(虽然不算特别数论) 希望你在浏览这篇题解前已经知道了费马小定理 利用用费马小定理构造函数\(g(x)=(x-i)^{P-1}\) ...

  7. AtCoder Beginner Contest 076

    A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...

  8. AtCoder Beginner Contest 079 D - Wall【Warshall Floyd algorithm】

    AtCoder Beginner Contest 079 D - Wall Warshall Floyd 最短路....先枚举 k #include<iostream> #include& ...

  9. AtCoder Beginner Contest 064 D - Insertion

    AtCoder Beginner Contest 064 D - Insertion Problem Statement You are given a string S of length N co ...

随机推荐

  1. 利用github给国外文件下载加速

    前言 作为一名程序员,经常需要下载一些编程相关的环境,而国内的网络环境大家都知道,有的文件用浏览器是下载不动的,于是我有了利用github下载文件的想法. 我的demo项目地址:https://git ...

  2. 剑指offer 面试题6:从尾到头打印链表

    题目描述 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList. 编程思想 从前往后遍历,将值存入栈中,然后打印栈中内容即可. 编程实现 /** * struct ListNode { * ...

  3. TCP/IP五层模型-传输层-UDP协议

    ​1.定义:UDP:是非面向连接.不可靠的用户数据包协议. 2.应用场景:适合对数据完整性要求不高,但对延迟很敏感,比如即时通信(语音视频聊天等). 3.UDP报文格式: 4.用UDP传输数据的应用层 ...

  4. 通过show status 命令了解各种sql的执行频率

    show status like 'Com_%'; Com_select                | 1   执行select操作的次数,一次查询只累加1 Com_insert         ...

  5. 【Linux】iptables配置文件中的一些疑问

    1.看到配置文件中开头会写一句话,但是数值还都不一样 括号里面的数值的含义是:通过该规则的数据包和字节总数 Chain FORWARD (policy DROP 0 packets, 0 bytes) ...

  6. P1220 关路灯(区间规划)

    题目描述 某一村庄在一条路线上安装了n盏路灯,每盏灯的功率有大有小(即同一段时间内消耗的电量有多有少).老张就住在这条路中间某一路灯旁,他有一项工作就是每天早上天亮时一盏一盏地关掉这些路灯. 为了给村 ...

  7. POJ1629:picnic planning

    题目描述 矮人虽小却喜欢乘坐巨大的轿车,轿车大到可以装下无论多少矮人.某天,N(N≤20)个矮人打算到野外聚餐.为了 集中到聚餐地点,矮人A 有以下两种选择 1)开车到矮人B家中,留下自己的轿车在矮人 ...

  8. [Usaco2009 Feb]Revamping Trails 道路升级

    题目描述 每天,农夫John需要经过一些道路去检查牛棚N里面的牛. 农场上有M(1<=M<=50,000)条双向泥土道路,编号为1..M. 道路i连接牛棚P1_i和P2_i (1 < ...

  9. 入门OJ:售货员的难题

    题目描述 某乡有n个村庄(1<n<15),有一个售货员,他要到各个村庄去售货,各村庄之间的路程s(0<s<1000)是已知的,且A村到B村与B村到A村的路大多不同.为了提高效率 ...

  10. consul是什么?

    consul概念: consul是用来做注册中心的 他和eureka是一样的 注册中心一般都是集群的形式存在保证高可用 consul像是一个nosql 存储着键值对 可以做存储consul是c/s架构 ...