当前位置:网站首页>【AtCoder Beginner Contest 260 (A·B·C)】
【AtCoder Beginner Contest 260 (A·B·C)】
2022-07-27 04:19:00 【浪漫主义狗】
更好的阅读体验 \color{red}{更好的阅读体验} 更好的阅读体验
A - A Unique Letter
题目大意
对于 S S S包含三个字符,输出只出现一次的字符,多个答案输出任意一个
思想
- 用
a[N]存储s[i]出现的次数
代码
#include <bits/stdc++.h>
using namespace std;
const int N = 1000;
int a[N];
int main(){
string s;
cin >> s;
for(int i = 0; i < s.size(); i ++){
a[s[i]]++;
}
for(int i = 'a'; i <= 'z'; i ++){
if(a[i] == 1){
cout << (char)i << endl;
return 0;
}
}
cout << -1 << endl;
return 0;
}
B - Better Students Are Needed!
题目大意
共有 N N N个学生,给出其数学和英语成绩分别为 A i , B i A_i,B_i Ai,Bi,对于 X X X名数学成绩最高的学生进行录取,然后从剩余的未录取学生中选择 Y Y Y名英语成绩最高的学生进行录取,最后从剩余的未录取学生中选择 Z Z Z名总成绩最高的学生进行录取,若分数相同录取编号小的学生。
思想
- 结构体排序
- 分别对数学,英语和总成绩由高到低进行排序
- 选择相应数量的符合要求的学生,并将录取的学生进行标记
代码
#include <bits/stdc++.h>
using namespace std;
const int N = 1e6 + 3;
struct students{
int m,e,p;
}stu[N];
int n,x,y,z;
bool vis[N];
//对数学成绩排序
bool cmp1(students &s1,students &s2){
if(s1.m == s2.m){
return s1.p < s2.p;
}
else return s1.m > s2.m;
}
//对英语成绩排序
bool cmp2(students &s1,students &s2){
if(s1.e == s2.e){
return s1.p < s2.p;
}
else return s1.e > s2.e;
}
//对总成绩排序
bool cmp3(students &s1,students &s2){
if(s1.m + s1.e == s2.m + s2.e){
return s1.p < s2.p;
}
else return s1.m + s1.e > s2.m + s2.e;
}
int main(){
cin >> n >> x >> y >> z;
for(int i = 0; i < n; i ++){
cin >> stu[i].m;
stu[i].p = i + 1;
}
for(int i = 0; i < n; i ++) cin >> stu[i].e;
if(x){
int flag = 0;
sort(stu,stu + n,cmp1);
for(int i = 0; flag < x; i ++){
if(!vis[stu[i].p]){
vis[stu[i].p] = 1;
flag++;
}
}
}
if(y){
int flag = 0;
sort(stu,stu + n,cmp2);
for(int i = 0; flag < y; i ++){
if(!vis[stu[i].p]){
vis[stu[i].p] = 1;
flag++;
}
}
}
if(z){
int flag = 0;
sort(stu,stu + n,cmp3);
for(int i = 0; flag < z; i ++){
if(!vis[stu[i].p]){
vis[stu[i].p] = 1;
flag++;
}
}
}
for(int i = 1; i <= n; i ++) if(vis[i]) cout << i << endl;
return 0;
}
C - Changing Jewels
题目大意
- 一颗等级为 n n n的红宝石可以变成一颗等级为 n − 1 n-1 n−1的红宝石和 X X X颗等级为 n n n的蓝宝石
- 一颗等级为 n n n的蓝宝石可以变成一颗等级为 n − 1 n-1 n−1的红宝石和 Y Y Y颗等级为 n − 1 n-1 n−1的蓝宝石
- 只有宝石等级 n > 2 n>2 n>2时才可以进行转化
- 给出一颗红宝石的等级 N N N和转换比例 X , Y X,Y X,Y,不限制转化次数,求可以得到多少蓝宝石
思想
- 动态规划
- 状态表示:
red[i]表示从一颗等级为 i i i的红宝石转化到等级为 1 1 1的蓝宝石的最大数量blue[i]表示一颗等级为 i i i的蓝宝石转化到等级为 1 1 1的蓝宝石的最大数量
- 状态计算:
- 先计算
blue[i] = red[i - 1] + blue[i - 1] * Y的状态 - 再计算
red[i] = red[i - 1] + blue[i] * X的状态 - 最后
red[n]即为转化的最大值
- 先计算
代码
#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
const int N = 20;
LL n, x, y;
LL m = 1;
LL red[N], blue[N];
int main(){
cin >> n >> x >> y;
red[1] = 0, blue[1] = 1;
for(int i = 2; i <= n; i ++){
blue[i] = red[i - 1] + blue[i - 1] * y;
red[i] = red[i - 1] + blue[i] * x;
}
// for(int i = 1; i <= n; i ++) cout << blue[i] << ' ' ;
// cout << endl;
cout << red[n] << endl;
return 0;
}
边栏推荐
- Eureka service registry
- The difference between ArrayList and LinkedList
- JS第二天(变量、变量的使用、命名规则、语法扩展)
- els_ Rectangle drawing, code planning and backup
- HEAD detached from origin/...导致push失败
- Brightcove appoints Dan Freund as chief revenue Officer
- Nacos startup and login
- 详解左值、右值、左值引用以及右值引用
- Technology sharing | gtid that needs to be configured carefully_ mode
- ELS square display principle
猜你喜欢

电商分账系统重要吗,平台应该如何选择分账服务商呢?

Prometheus node exporter common monitoring indicators

无有线网络下安装并配置debian

Okaleido ecological core equity Oka, all in fusion mining mode

深度剖析 —— 动态内存管理

Spark practice case (upgraded version)

Brightcove appoints Dan Freund as chief revenue Officer

Eureka service registry

数组中的最大值,最小值,冒泡排序

IIC 通信协议 (一)
随机推荐
项目参数做成可配置项,@ConfigurationProperties注解的使用
Head detached from origin/... Causes push failure
ros 相机标定 sensor_msgs/CameraInfo Message 数据类型及含义
卷积神经网络——灰度图像的卷积
BigDecimal pit summary & Best Practices
ELS compatibility DC, transfer pictures to window
els 兼容性DC、传递图片到窗口
好用移动APP自动化测试框架哪里找?收藏这份清单就好了!
Understand kingbasees V9 in one picture
详解左值、右值、左值引用以及右值引用
Standard C language 13
Wechat applet rotation map
【机器学习网络】BP神经网络与深度学习-6 深度神经网络(deep neural Networks DNN)
P1438 无聊的数列 线段树+差分
Install and configure Debian on a wired network
结构型模式-适配器模式
e.target与e.currentTarget的区别
From scratch, C language intensive Lecture 4: array
Effect Hook
【独立站建设】跨境电商出海开网店,首选这个网站建设!