题目背景
小S想要跟小B比 谷洛 的月赛,已知 谷洛 月赛共 N N N题,第 i i i题难度为 D i D_i Di,分值为 C i C_i Ci,小S会做难度不大于K的题,其余的他只能用 弊作 的方法了。
题目描述
知周所众
C S D N CSDN CSDN 有个东西叫 C 知道 C知道 C知道
I n s C o d e InsCode InsCode 有个东西叫 C h a t G P T ChatGPT ChatGPT W i t h With With P r o m p t Prompt Prompt
I n s C o d e InsCode InsCode 中还有一个 C h a t G P T ChatGPT ChatGPT 接口
它们虽是人工智能,可有时候他们会变成 人工智障
表格
AI | 可用次数 | 智商 |
---|---|---|
C S D N CSDN CSDN—— C 知道 C知道 C知道 | 5 | X X X |
I n s C o d e InsCode InsCode—— C h a t G P T ChatGPT ChatGPT W i t h With With P r o m p t Prompt Prompt | ∞ | Y Y Y |
I n s C o d e InsCode InsCode—— C h a t G P T ChatGPT ChatGPT | 3 | Z Z Z |
保证 : Y < = X < = Z 保证:Y<=X<=Z 保证:Y<=X<=Z
t i p s : tips: tips:每个AI只能做 智商>=难度 的题
小S想让你告诉他他用上了这些,最多可以得多少分?
输入格式
共4行:
第一行一个整数 N N N
第二行 N N N个整数,第 i i i个表示 D i D_i Di
第二行 N N N个整数,第 i i i个表示 C i C_i Ci
第四行 3 3 3 个数, X X X Y Y Y Z Z Z
第五行一个数,表示 K K K
输出格式
共1行
最多做几个题
样例 #1
样例输入 #1
5
1 2 3 4 5
5 4 3 2 1
2 3 1
1
样例输出 #1
3
提示
数据不大,int就行
N N N最大20
数据可能会很不合理
加团Code.出题团
code
#include<bits/stdc++.h>
using namespace std;
class AI{
public:
int time;
int dif;
};
class problem {
public:
int dif;
int cnt;
};
//need cin
int x,y,z;
int k;
int n;
problem p[50];
void pop(problem a[],int n){
for(int i=0;i<=n;i++){
for(int j=1;j<=n-i;j++){
if(a[j].cnt<a[j+1].cnt){
swap(a[j],a[j+1]);
}
}
}
}
int main(){
AI c_know={5,x},inscode={3,y},ChatGPT={-1,z};
cin>>n;
for(int i=0;i<n;i++){
cin>>p[i].dif;
}
for(int i=0;i<n;i++){
cin>>p[i].cnt;
}
cin>>x>>y>>z;
cin>>k;
int sum=0;
for(int i=0;i<n;i++){
if(p[i].dif<=k){
sum++;
}
else if(p[i].dif<=z&&ChatGPT.time!=0){
sum++;ChatGPT.time--;
}
else if(p[i].dif>z&&p[i].dif<=x&&c_know.time!=0){
sum++;c_know.time--;
}
else if(p[i].dif>x&&p[i].dif<=y&&inscode.time!=0){
sum++;inscode.time--;
}
}
cout<<sum;
return 0;
}