AtCoder Beginner Contest 087 (ABC)
A - Buying Sweets
题目链接:https://abc087.contest.atcoder.jp/tasks/abc087_a
Time limit : 2sec / Memory limit : 256MB
Score : 100 points
Problem Statement
You went shopping to buy cakes and donuts with X yen (the currency of Japan).
First, you bought one cake for A yen at a cake shop. Then, you bought as many donuts as possible for B yen each, at a donut shop.
How much do you have left after shopping?
Constraints
- 1≤A,B≤1 000
- A+B≤X≤10 000
- X, A and B are integers.
Input
Input is given from Standard Input in the following format:
X
A
B
Output
Print the amount you have left after shopping.
Sample Input 1
1234
150
100
Sample Output 1
84
You have 1234−150=1084 yen left after buying a cake. With this amount, you can buy 10 donuts, after which you have 84 yen left.
Sample Input 2
1000
108
108
Sample Output 2
28
Sample Input 3
579
123
456
Sample Output 3
0
Sample Input 4
7477
549
593
Sample Output 4
405
#include<bits/stdc++.h>
using namespace std; int main()
{
int x,a,b;
while(cin>>x>>a>>b){
x-=a;
x%=b;
cout<<x<<endl;
}
return ;
}
B - Coins
题目链接:https://abc087.contest.atcoder.jp/tasks/abc087_b
Time limit : 2sec / Memory limit : 256MB
Score : 200 points
Problem Statement
You have A 500-yen coins, B 100-yen coins and C 50-yen coins (yen is the currency of Japan). In how many ways can we select some of these coins so that they are X yen in total?
Coins of the same kind cannot be distinguished. Two ways to select coins are distinguished when, for some kind of coin, the numbers of that coin are different.
Constraints
- 0≤A,B,C≤50
- A+B+C≥1
- 50≤X≤20 000
- A, B and C are integers.
- X is a multiple of 50.
Input
Input is given from Standard Input in the following format:
A
B
C
X
Output
Print the number of ways to select coins.
Sample Input 1
2
2
2
100
Sample Output 1
2
There are two ways to satisfy the condition:
- Select zero 500-yen coins, one 100-yen coin and zero 50-yen coins.
- Select zero 500-yen coins, zero 100-yen coins and two 50-yen coins.
Sample Input 2
5
1
0
150
Sample Output 2
0
Note that the total must be exactly X yen.
Sample Input 3
30
40
50
6000
Sample Output 3
213
题解:找零钱
#include<bits/stdc++.h>
using namespace std; int main()
{
int x,a,b,c;
while(cin>>a>>b>>c>>x){
x/=;
int sum=;
for(int i=;i<=a;i++){
for(int j=;j<=b;j++){
for(int k=;k<=c;k++){
if(i*+j*+k==x) sum++;
}
}
}
cout<<sum<<endl;
}
return ;
}
C - Candies
题目链接:https://abc087.contest.atcoder.jp/tasks/arc090_a
Time limit : 2sec / Memory limit : 256MB
Score : 300 points
Problem Statement
We have a 2×N grid. We will denote the square at the i-th row and j-th column (1≤i≤2, 1≤j≤N) as (i,j).
You are initially in the top-left square, (1,1). You will travel to the bottom-right square, (2,N), by repeatedly moving right or down.
The square (i,j) contains Ai,j candies. You will collect all the candies you visit during the travel. The top-left and bottom-right squares also contain candies, and you will also collect them.
At most how many candies can you collect when you choose the best way to travel?
Constraints
- 1≤N≤100
- 1≤Ai,j≤100 (1≤i≤2, 1≤j≤N)
Input
Input is given from Standard Input in the following format:
N
A1,1 A1,2 … A1,N
A2,1 A2,2 … A2,N
Output
Print the maximum number of candies that can be collected.
Sample Input 1
5
3 2 2 4 1
1 2 2 2 1
Sample Output 1
14
The number of collected candies will be maximized when you:
- move right three times, then move down once, then move right once.
Sample Input 2
4
1 1 1 1
1 1 1 1
Sample Output 2
5
You will always collect the same number of candies, regardless of how you travel.
Sample Input 3
7
3 3 4 5 4 5 3
5 3 4 4 2 3 2
Sample Output 3
29
Sample Input 4
1
2
3
Sample Output 4
5 题解:分成两个数组 同时使用前缀和 取最大值
#include<bits/stdc++.h>
using namespace std;
int a[],b[];
int suma[],sumb[];
int main()
{
int n;
while(cin>>n){
for(int i=;i<n;i++){
cin>>a[i];
}
for(int i=;i<n;i++){
cin>>b[i];
}
suma[]=a[];sumb[]=b[];
for(int i=;i<n;i++){
suma[i]=suma[i-]+a[i];
sumb[i]=sumb[i-]+b[i];
}
int maxn=suma[]+sumb[n-];
for(int i=;i<n;i++){
int sum=suma[i]+sumb[n-]-sumb[i-];
maxn=max(maxn,sum);
}
cout<<maxn<<endl;
}
return ;
}
AtCoder Beginner Contest 087 (ABC)的更多相关文章
- AtCoder Beginner Contest 088 (ABC)
A - Infinite Coins 题目链接:https://abc088.contest.atcoder.jp/tasks/abc088_a Time limit : 2sec / Memory ...
- AtCoder Beginner Contest 050 ABC题
A - Addition and Subtraction Easy Time limit : 2sec / Memory limit : 256MB Score : 100 points Proble ...
- AtCoder Beginner Contest 087 D - People on a Line
Time limit : 2sec / Memory limit : 256MB Score : 400 points Problem Statement There are N people sta ...
- AtCoder Beginner Contest 087 B - Coins
Time limit : 2sec / Memory limit : 256MB Score : 200 points Problem Statement You have A 500-yen coi ...
- AtCoder Beginner Contest 087 D People on a Line(DFS)
题意 给出n个点,m组关系L,R,D,L在R的左边距离D,判断是否存在n个人的位置满足m组关系 分析 Consider the following directed graph G: There ar ...
- AtCoder Beginner Contest 100 2018/06/16
A - Happy Birthday! Time limit : 2sec / Memory limit : 1000MB Score: 100 points Problem Statement E8 ...
- AtCoder Beginner Contest 053 ABCD题
A - ABC/ARC Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Smeke has ...
- AtCoder Beginner Contest 076
A - Rating Goal Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement Takaha ...
- AtCoder Beginner Contest 068 ABCD题
A - ABCxxx Time limit : 2sec / Memory limit : 256MB Score : 100 points Problem Statement This contes ...
随机推荐
- 帝国cms文章页调用当前文章URL如何操作?
前面我们讨论过dedecms文章页调用地址(当前文章URL)如何操作,作为同台竞技的帝国cms也能在文章页调用当前文章URL吗?答案是肯定的!那就随ytkah一起来探索一下吧 帝国cms模板是在后台直 ...
- C# 线程池ThreadPool的用法简析
https://blog.csdn.net/smooth_tailor/article/details/52460566 什么是线程池?为什么要用线程池?怎么用线程池? 1. 什么是线程池? .NET ...
- kickstart模式实现批量安装centos7.x系统
1.1 安装系统的方法 l 光盘(ISO文件,光盘的镜像文件)===>>每一台物理机都得给一个光驱,如果用外置光驱的话,是不是每台机器都需要插一下 l U盘:ISO镜像刻录到U盘==& ...
- mac本的环境基本完成大部分了
1.禅道的部署,技术上最难搞 session 目录存储目录不存在的处理 终端:open /et 前往——>前往文件夹——〉/资源库/WebServer/Documents/ 在tem目录下新建文 ...
- [Java] Header checkBox in Jtable
The reference is from here. 在Jtable里面我们可能会有checkbox, 而有时候我们有很多checkbox需要同时check或者同时uncheck的时候, 如果有一个 ...
- Java Selenium - 几种对话框处理Alert\confirm\prompt
1. Alert , 先用常规办法定位到能触发alert的按钮 , 然后 Alert alert = driver.switchTo().alert(); alert.accept(); 如果aler ...
- DataFrame修改列名
把Dataframe格式的列名'class1'修改为'class_label' data.rename(columns={"label":"true_label" ...
- python之进程(池)
获得进程id import osfrom multiprocessing import Process def info(title): print(title) print('模块名:',__nam ...
- iOS 开发笔记-加载/初始化
ViewDidLoad 一般我们会在这里做界面上的初始化操作,比如往view中添加一些子视图.从数据库或者网络加载模型数据装配到子视图中 在自定义控制里 initWithFrame:一般用于添加控件, ...
- 查看手机cpu信息
adb shell getprop ro.product.cpu.abi