当前位置:网站首页>Pat (Grade B) 2022 summer exam
Pat (Grade B) 2022 summer exam
2022-07-06 06:12:00 【T_ Y_ F666】
PAT( Class B )2022 Summer examination questions in
7-1 It's another A+B
15 branch
The original title is

Algorithm tags
simulation Hash
Code
#include<bits/stdc++.h>
#define int long long
#define rep(i, a, b) for(int i=a;i<b;++i)
#define Rep(i, a, b) for(int i=a;i>=b;--i)
using namespace std;
const int N = 10005;
int f[N][N];
int a[N], b[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
return s*w;
}
void put(int x) {
if(x<0) putchar('-'),x=-x;
if(x>=10) put(x/10);
putchar(x%10^48);
}
unordered_map<string, int> ump={
{"1011111", 0},
{"0000011", 1},
{"1110110", 2},
{"1110011", 3},
{"0101011", 4},
{"1111001", 5},
{"1111101", 6},
{"1000011", 7},
{"1111111", 8},
{"1111011", 9},
};
vector<string> get(string str){
vector<string> res;
string word;
for (auto c: str){
if (c == ' '){
res.push_back(word);
word = "";
}
else word += c;
}
res.push_back(word);
return res;
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
string s, s1;
getline(cin, s);
getline(cin, s1);
vector<string> get00=get(s);
vector<string> get10=get(s1);
int a=0, b=0;
rep(i, 0, get00.size()){
a=a*10+ump[get00[i]];
}
rep(i, 0, get10.size()){
b=b*10+ump[get10[i]];
}
printf("%lld", (a+b));
return 0;
}
7-2 Fitness gurus
fraction 20
The original title is


Algorithm tags
simulation STL
Code
#include<bits/stdc++.h>
#define int long long
#define rep(i, a, b) for(int i=a;i<b;++i)
#define Rep(i, a, b) for(int i=a;i>=b;--i)
using namespace std;
const int N = 10005;
int f[N][N];
int a[N], b[N],c[N],d[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
return s*w;
}
void put(int x) {
if(x<0) putchar('-'),x=-x;
if(x>=10) put(x/10);
putchar(x%10^48);
}
vector<vector<int>> vs;
vector<int> v;
vector<int> v1;
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n=read();
rep(i, 0, n){
rep(j, 0, 8){
f[i][j]=read();
}
}
// i Column
rep(i, 1, 8){
int max=0;
rep(j, 0, n){
if(f[j][i]>max){
max=f[j][i];
}
}
rep(j, 0, n){
if(f[j][i]==max&&max){
v.push_back(f[j][0]);
}
}
vs.push_back(v);
v.erase(v.begin(), v.end());
}
int max1=0, max2=0;
rep(i, 0, n){
rep(j, 1, 8){
if(f[i][j])d[i]++;
c[i]+=f[i][j];
}
if(max1<c[i]&&d[i]>=3){
max1=c[i];
}
}
rep(i, 0, n){
if(c[i]==max1&&d[i]>=3){
v1.push_back(f[i][0]);
}
}
int cnt=0;
for(auto a:vs){
printf("Star %lld\n", ++cnt);
if(a.size())for(auto b:a){
printf("%06lld\n", b);
}else{
printf("NONE\n");
}
}
puts("Star of the week");
for(auto a:v1){
printf("%06lld\n", a);
}
return 0;
}
7-3 Factorial equation
fraction 20
The original title is

Algorithm tags
simulation mathematics
Code
#include<bits/stdc++.h>
#define int long long
#define rep(i, a, b) for(int i=a;i<b;++i)
#define Rep(i, a, b) for(int i=a;i>=b;--i)
using namespace std;
const int N = 10005;
int f[N][N];
int a[N], b[N],c[N],d[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
return s*w;
}
void put(int x) {
if(x<0) putchar('-'),x=-x;
if(x>=10) put(x/10);
putchar(x%10^48);
}
int mul(int a,int b){
int ans=1;
rep(i, a+1, b+1){
ans*=i;
if(ans>0x3f3f3f3f){
return -1;
}
}
return ans;
}
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int n=read();
while(n--){
int a=read(), b=read(), c=read(), d=read();
if(mul(c, d)==mul(a, b)&&mul(a, b)!=-1){
puts("YES");
}else{
puts("NO");
}
}
return 0;
}
7-4 What day of the week is today
fraction 20
The original title is

Algorithm tags
simulation Hash
Code
#include<bits/stdc++.h>
#define int long long
#define rep(i, a, b) for(int i=a;i<b;++i)
#define Rep(i, a, b) for(int i=a;i>=b;--i)
using namespace std;
const int N = 10005;
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
return s*w;
}
void put(int x) {
if(x<0) putchar('-'),x=-x;
if(x>=10) put(x/10);
putchar(x%10^48);
}
int ff(int a,int b, int c, int d, int e, int f, int dd){
int cnt=0;
int x, y, z;
if(dd==0){
x=a;
y=(a+1)%7;
z=(a+2)%7;
}
else if(dd==1){
x=(b-1+7)%7;
y=b;
z=(b+1)%7;
}else if(dd==2){
y=(c-1+7)%7;
x=(c-2+7)%7;
z=c;
}
if(d==x){
cnt+=1;
}if(e==y){
cnt+=2;
}if(f==z){
cnt+=4;
}
return cnt;
}
unordered_map<int,string> ump={
{0, "Sunday"},
{1, "Monday"},
{2, "Tuesday"},
{3, "Wednesday"},
{4, "Thursday"},
{5, "Friday"},
{6, "Saturday"},
};
unordered_map<int,string> um={
{0, "yesterday"},
{1, "today"},
{2, "tomorrow"},
};
signed main(){
ios::sync_with_stdio(false);
cin.tie(0);
cout.tie(0);
int a=read(),b=read(), c=read();
int d=read(),e=read(), f=read();
int t;
rep(i, 0, 3){
int aa=ff(a, b, c, d, e, f, i);
if(aa==1){
int t=(d+1)%7;
cout<<ump[t]<<"\n";
cout<<um[i]<<"\n";
cout<<"yesterday"<<"\n";
break;
}else if(aa==2){
int t=(e)%7;
cout<<ump[t]<<"\n";
cout<<um[i]<<"\n";
cout<<"today"<<"\n";
break;
}else if(aa==4){
int t=(f-1+7)%7;
cout<<ump[t]<<"\n";
cout<<um[i]<<"\n";
cout<<"tomorrow"<<"\n";
break;
}
}
return 0;
}
7-5 LRU cache
fraction 25
The original title is

Algorithm tags
simulation
Code
#include<bits/stdc++.h>
#define int long long
#define rep(i, a, b) for(int i=a;i<b;++i)
#define Rep(i, a, b) for(int i=a;i>=b;--i)
using namespace std;
const int N = 20005;
int st[N];
inline int read(){
int s=0,w=1;
char ch=getchar();
while(ch<'0'||ch>'9'){if(ch=='-')w=-1;ch=getchar();}
while(ch>='0'&&ch<='9') s=s*10+ch-'0',ch=getchar();
return s*w;
}
void put(int x) {
if(x<0) putchar('-'),x=-x;
if(x>=10) put(x/10);
putchar(x%10^48);
}
signed main(){
int n=read(), m=read();
vector<int> a(m + 1);
vector<int> ans;
rep(i, 1, m+1){
a[i]=read();
}
int cnt = 0;
for (int i = 1, j = 1; i <= m; ++i){
if (st[a[i]] == 0)
cnt += 1;
st[a[i]] += 1;
if (cnt > n){
while (j < i){
st[a[j]] -= 1;
if (st[a[j]] == 0){
ans.push_back(a[j]);
j++;
cnt -= 1;
break;
}
j++;
}
}
}
rep(i, 0, ans.size()){
cout << ans[i] << " "[i == ans.size() - 1];
}
}
record

Originality is not easy.
Reprint please indicate the source
If it helps you Don't forget to praise and support 
边栏推荐
- Expose the serial fraudster Liu Qing in the currency circle, and default hundreds of millions of Cheng Laolai
- [postman] dynamic variable (also known as mock function)
- Seven imperceptible truths in software testing
- 二维码的前世今生 与 六大测试点梳理
- 【Postman】动态变量(也称Mock函数)
- Caused by:org.gradle.api.internal.plugins . PluginApplicationException: Failed to apply plugin
- 【Postman】Monitors 监测API可定时周期运行
- 黑猫带你学eMMC协议第10篇:eMMC读写操作详解(read & write)
- 技术分享 | 常见接口协议解析
- Analysis report on development trends and investment planning of China's methanol industry from 2022 to 2028
猜你喜欢
随机推荐
曼哈顿距离与曼哈顿矩形-打印回字型矩阵
MPLS test report
10m25dcf484c8g (FPGA) amy-6m-0002 BGA GPS module
MySQL之基础知识
【Postman】Monitors 监测API可定时周期运行
Gtest之TEST宏的用法
多线程应用的测试与调试
Buuctf-[[gwctf 2019] I have a database (xiaoyute detailed explanation)
MySQL之数据类型
Bit operation rules
Company video accelerated playback
对数据安全的思考(转载)
通过修改style设置打印页样式
[paper reading] nflowjs: synthetic negative data intensive anomaly detection based on robust learning
【eolink】PC客户端安装
【论文代码】SML部分代码阅读
About PHP startup, mongodb cannot find the specified module
[untitled]
LeetCode 729. 我的日程安排表 I
[Baiwen smart home] first day of the course_ Learn Embedded and understand the development mode of bare metal and RTOS








