#A. GC.2019.六年级.01.最大倍数
ACEF
- 传统题1000ms256MiB
题目描述
小 Q 刚学会了计算倍数,他的哥哥就给他设计了一个问题:让他找出 1~N 中 K 的 最大 的倍数。
例如:N=4,K=2 时,表示在 1,2,3,4 中找出 2 的最大倍数,答案是:4。
小Q 有点为难,就来求助聪明的你,你能帮助他吗?
输入格式
第一行,两个整数 N,K。
数据范围
1 <= N,K <=1000000000,且 N>=K。
输出格式
不超过 N 的 K 的最大的倍数。
样例
输入数据 1
7 4
Copy
输出数据 1
4
根据C++整除特性,翼德
代码:
#include<bits/stdc++.h>
using namespace std;
unsigned long long n,b,maxx;
int main()
{cin>>n>>b;cout<<n/b*b;return 0;
}
#B. GC.2019.六年级.02.最大步数
EF
- 传统题1000ms256MiB
题目描述
给出了两个非负整数 P 和 Q。您的任务是使得 P 和 Q 相等。在每一步中,您可以执行以 下两项操作之一: 1、将任何质数加到 P 上。 2、从 Q 减去任何质数。 如果不可能使 P 和 Q 相等,则输出-1。否则,输出一个非负整数:可以执行的最大步数。
输入格式
数字 0 和 1 不是质数。
输出格式
一行,两个整数 P 和 Q。 0 <= P, Q <= 10^18
样例
输入数据 1
5 9
Copy
输出数据 1
2
Copy
输入数据 2
5 10
Copy
输出数据 2
2
Copy
输入数据 3
5 6
Copy
输出数据 3
-1
代码:
#include<bits/stdc++.h>
using namespace std;
long long p,q;
int main()
{cin>>p>>q;if(p>q){cout<<-1;return 0;}if(p-q==0){cout<<0;return 0;}if(p-q==1){cout<<-1;return 0;}cout<<(q-p)/2;return 0;
}
#C. GC.2019.六年级.03.小草与小球
EF
- 传统题1000ms256MiB
题目描述
曾经有一片空地(全部是字符'.'构成),例如:
................
然后,有人将一些小球(一对小括号"()"表示一个小球,小球不会重叠)丢到空地上,例如:
.()...()().().()
最终,空地上长出了一些草(用字符'|'表示),遮盖了一些小球,例如在上面的基础上 变成了这样:
.(|||.()(||||||)
给出一个字符串 S,表示草地最终的状态,求草地上至少有多少个小球。
输入格式
一个字符串 S,长度不超过 50。只可能包括 4 种类型的字符:'.'、'('、')'、'|'
输出格式
一个整数,表示小球的最少数量。
样例
输入数据 1
.(|||.()(||||||)
Copy
输出数据 1
4
Copy
输入数据 2
(|(|(||)|)|)
Copy
输出数据 2
6
Copy
输入数据 3
.....|||||.....
Copy
输出数据 3
0
代码:
#include<bits/stdc++.h>
using namespace std;
int y=0;
int main()
{ string a;cin>>a;for(int i=0;i<a.size();i++){if(a[i]=='('&&a[i+1]==')'){y++;i++;}else if(a[i]==')'||a[i]=='('){y++;}}cout<<y;return 0;
}
#D. GC.2019.六年级.04.渡河
EF
- 传统题1000ms256MiB
题目描述
总共有 X 人要坐船过河。
一个小船最多可以坐 4 人,一个小船固定收费 32 元。
一个大船最多可以坐 6 人,一个大船固定收费 36 元。
码头有无穷多小船和大船。
问如何坐船,才能使得总费用最小。
输入格式
一个整数 X。
数据范围
60%的数据, 1 <= X <= 1000
80%的数据,1 <= X <= 1000000
100%的数据,1 <= X <= 2000000000
输出格式
一个整数,表示最小的总费用。
样例
输入数据 1
4
Copy
输出数据 1
32
Copy
输入数据 2
12
Copy
输出数据 2
72
代码:
#include<bits/stdc++.h>
using namespace std;
long long x,s,l;
int main()
{cin>>x;if(x<=4)s=32;else{s+=(x/6)*36;l=x%6;if(l==5){s+=36;}if(l==4||l==3){s+=32;}if(l==2||l==1){s+=28;}}cout<<s;return 0;
}
谢谢观看!!!