当前位置:网站首页>Atcoder beginer contest 233 (a~d) solution
Atcoder beginer contest 233 (a~d) solution
2022-07-06 02:38:00 【Time is the most testing person】
AtCoder Beginner Contest 233 Answer key
List of articles
A - 10yen Stamp
【 Topic link 】A - 10yen Stamp (atcoder.jp)
The question : The current number can be added each time 10, Ask at least several times before sending a letter
- x > y: The instructions are enough to send
- x < y: Can't send , Then add 10, know x > y until , Count .
【 Code implementation 】
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <map>
#include <queue>
#include <deque>
#include <vector>
#include <string.h>
#include <unordered_set>
#include <unordered_map>
#define x first
#define y second
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
int main()
{
int x, y;
cin >> x >> y;
if(x >= y) cout << 0;
else
{
int ans = 0;
while(x < y)
{
x += 10;
ans ++;
}
cout << ans;
}
return 0;
}
B - A Revers
【 Topic link 】B - A Reverse (atcoder.jp)
The question : The string s stay [l,r] After the string of is flipped , Output s
Knowledge point : String emulation
【 Code implementation 】
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cstring>
#include <map>
#include <queue>
#include <deque>
#include <vector>
#include <string.h>
#include <unordered_set>
#include <unordered_map>
#define x first
#define y second
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
const int N = 1e5 + 10;
char s[N];
int main()
{
int l, r;
scanf("%d%d", &l, &r);
scanf("%s", s + 1);
int len = strlen(s + 1);
// Double pointer to flip
int i = l, j = r;
while(i < j) swap(s[i ++], s[j --]);
printf("%s", s + 1);
return 0;
}
C - Product
【 Topic link 】C - Product (atcoder.jp)
The question : Yes n A package , There are several balls with numbers in each bag , Let you choose a ball in each bag so that the number product is x, Finally, let you be satisfied equal to x Number of alternatives .
notes :
- The range of data
- prune
Knowledge point :DFS
【 Code implementation 】
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cstring>
#include <map>
#include <queue>
#include <deque>
#include <vector>
#include <string.h>
#include <unordered_set>
#include <unordered_map>
#define x first
#define y second
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
const int N = 1e5 + 10;
int n, res = 0;
LL target;
vector<LL> a[N];// Two dimensional array
void dfs(int u, LL val)// Choose the number of backpacks What is the weight of the backpack now
{
if(u == n)
{
if(val == target) res ++;
return ;
}
for(int j = 0; j < a[u].size(); j ++)// use vector Make a two-dimensional array , Each layer calls .size(), You can get the number of backpacks in the current layer
{
if(a[u][j] * val > target) continue;// prune
dfs(u + 1, val * a[u][j]);
}
}
int main()
{
scanf("%d%lld", &n, &target);
for(int i = 0; i < n; i ++)
{
int cnt;
scanf("%d", &cnt);
for(int j = 0; j < cnt; j ++)
{
LL value;
scanf("%lld", &value);
a[i].push_back(value);
}
}
dfs(0, 1);
printf("%d", res);
return 0;
}
D - Count Interval
【 Topic link 】D - Count Interval (atcoder.jp)
The question : Statistics s[r]-s[l - 1] == k
Number of occurrences
Ideas : If enumerating intervals , Time complexity will explode , Statistics s[r]-s[l - 1] == k
Equivalent to statistics s[r]-k == s[l - 1]
. And then for each r Just ask s[r]-k The number of , That is to say s[l-1] The number of .s[l-1] It's also a prefix and , Therefore, the number of prefixes and the number of prefixes are increased by the way when looping .( Enumerate the right endpoint to find s[r]-k == s[l - 1] The number of times , It's just that we preprocessed it when counting prefixes and s[l-1] Value , Because it is also the value of prefix and !)
Knowledge point : The prefix and + Hashtable
【 Code implementation 】
#include <iostream>
#include <algorithm>
#include <cstring>
#include <cstdio>
#include <cstring>
#include <map>
#include <queue>
#include <deque>
#include <vector>
#include <string.h>
#include <unordered_set>
#include <unordered_map>
#define x first
#define y second
using namespace std;
typedef long long LL;
typedef pair<int, int> PII;
const int N = 2e5 + 10;
LL s[N];
int main()
{
LL n, k, res = 0;
scanf("%lld%lld", &n, &k);
unordered_map<LL, LL> hasp;
for(int i = 1; i <= n; i ++)
{
scanf("%lld", &s[i]);
s[i] = s[i] + s[i - 1];
hasp[s[i - 1]] ++;
res += hasp[s[i] - k];
}
printf("%lld", res);
return 0;
}
边栏推荐
- Li Kou today's question -729 My schedule I
- Keyword static
- DDoS attacks - are we really at war?
- [Yunju entrepreneurial foundation notes] Chapter II entrepreneur test 16
- 一个复制也能玩出花来
- 怎么检查GBase 8c数据库中的锁信息?
- The third level of C language punch in
- Accident index statistics
- General process of machine learning training and parameter optimization (discussion)
- JS events (add, delete) and delegates
猜你喜欢
Easy to use js script
Qt发布exe软件及修改exe应用程序图标
Introduction to robotframework (III) Baidu search of webui automation
High number_ Vector algebra_ Unit vector_ Angle between vector and coordinate axis
"Hands on learning in depth" Chapter 2 - preparatory knowledge_ 2.5 automatic differentiation_ Learning thinking and exercise answers
Gifcam v7.0 minimalist GIF animation recording tool Chinese single file version
Which ecology is better, such as Mi family, graffiti, hilink, zhiting, etc? Analysis of five mainstream smart brands
主数据管理(MDM)的成熟度
2345文件粉碎,文件强力删除工具无捆绑纯净提取版
Keyword static
随机推荐
Black high-end responsive website dream weaving template (adaptive mobile terminal)
[coppeliasim] efficient conveyor belt
剑指 Offer 30. 包含min函数的栈
3D drawing ()
Redis cluster deployment based on redis5
SSM 程序集
"Hands on learning in depth" Chapter 2 - preparatory knowledge_ 2.5 automatic differentiation_ Learning thinking and exercise answers
Follow the mouse's angle and keyboard events
模板_求排列逆序对_基于归并排序
技术管理进阶——什么是管理者之体力、脑力、心力
HDU_p1237_简单计算器_stack
How to accurately identify master data?
Patch NTP server at the beginning of DDoS counterattack
[Yunju entrepreneurial foundation notes] Chapter II entrepreneur test 24
Microsoft speech synthesis assistant v1.3 text to speech tool, real speech AI generator
微软语音合成助手 v1.3 文本转语音工具,真实语音AI生成器
更换gcc版本后,编译出现make[1]: cc: Command not found
模板_快速排序_双指针
Which ecology is better, such as Mi family, graffiti, hilink, zhiting, etc? Analysis of five mainstream smart brands
淘宝焦点图布局实战