第十五届蓝桥杯第三期模拟赛题单

目录

第一题:

 第二题:

 第三题:

第四题:

第五题:

第六题:

第七题

第八题

第九题

第十题


 

第一题

【问题描述】

  请问 2023 有多少个约数?即有多少个正整数,使得 2023 是这个正整数的整数倍。

【问题描述】

  这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:数论

参考答案:

6

C++代码】:

#include<iostream>
#include<unordered_map>
using namespace std;
unordered_map<int,int> h;
int main()
{int a=2023;for(int i=2;i<=a/i;i++){while(a%i==0){h[i]++;a/=i;}}if(a>1) h[a]++;int sum=1;for(auto it:h)sum=sum*(it.second+1);cout<<sum;
}

 

 第二题

问题描述:

 请问有多少组整数对 l, r 满足:
  1. l 和 r 都介于 0 (含)到 100 (含)之间;
  2. r-l >= 10。

【答案提交】

  这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:暴力枚举

参考答案:

4186

C++代码】:

#include<iostream>
using namespace std;
int main()
{int sum=0;for(int i=0;i<=100;i++)for(int j=i+10;j<=100;j++)sum++;cout<<sum;
}

 第三题

【问题描述】

  只能被 1 和本身整除的数称为质数。
  请问在 1 (含)到 1000000 (含)中,有多少个质数的各个数位上的数字之和为 23 。
  提示:599 就是这样一个质数,各个数位上的数字之和为 5+9+9=23 。

【答案提交】

  这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:筛质数

参考答案:

5503

C++代码】:

#include<iostream>
using namespace std;
const int N=1e6+5,M=1e6;
int prime[N],cnt;
bool st[N];
void Isprime()
{for(int i=2;i<=M;i++){if(!st[i]) prime[++cnt]=i;for(int j=1;prime[j]*i<=M;j++){st[prime[j]*i]=true;if(i%prime[j]==0) break;}}
}
int main()
{Isprime();int sum=0;for(int i=1;i<=cnt;i++){int x=0,m=prime[i];while(m){x+=m%10;m/=10;}if(x==23) sum++;}cout<<sum;
}
第四题

【问题描述】

  求 12345678901234567890123456789012345678901234567890 除以 2023 的余数。

答案提交

  这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:高精度/低精度

参考答案:

344

C++代码】:

#include<iostream>
#include<vector>
using namespace std;
void sub(vector<int> A,int b,int& r)
{for(int i=A.size()-1;i>=0;i--){r=r*10+A[i];r%=b;}
}
int main()
{string s="12345678901234567890123456789012345678901234567890";vector<int> A;int b=2023;for(int i=s.size()-1;i>=0;i--) A.push_back(s[i]-'0');int r=0;sub(A,b,r);cout<<r;
}
第五题

【问题描述】

  对于一个 n 行 m 列的矩阵,它的一个 k 行 k 列的子矩阵是指由矩阵中的连续 k 行、连续 k 列组成的矩阵。
  子矩阵的和是指子矩阵中所有元素的和。现在,小蓝对于一个矩阵中的子矩阵中最大的子矩阵的和很感兴趣。
  例如,对于如下 3 行 4 列的矩阵,2 行 2 列的子矩阵的和的最大值是 8,对应的子矩阵为由最后两行最后两列组成的子矩阵。
  2 0 2 3
  1 1 0 1
  1 2 3 4
  现在,小蓝有一个 30 行 20 列的大矩阵,如下所示,请问它的 5 行 5 列的子矩阵的和的最大值是多少?

9719 7515 5916 6467 7157 9614 8560 9075 2099 2838 1403 7652 6238 1699 8907 1804 5384 7942 7546 1978
8785 1944 8108 6040 2010 6646 2750 5410 4516 8757 5624 9257 9030 9290 6833 4646 9749 5304 5633 1573
8525 8244 8514 7474 7896 9731 8402 9036 1869 2688 2085 1667 7753 8466 4911 3812 8585 8319 4020 7350
1949 9120 4424 4057 8277 4511 6333 1533 7624 8932 1053 8682 9284 4134 1466 3607 8753 5310 3728 4163
9420 9185 7055 2342 4143 4499 2036 5374 7026 8638 8866 8364 1706 8767 1601 8309 5695 8179 4142 8489
5876 5660 4658 8307 2582 7544 8793 8207 3979 1692 1400 1893 4500 6389 7198 4836 4761 6603 2859 1312
6367 4174 9956 6668 6771 4795 6492 3937 7096 8041 8644 9379 8071 8667 5810 5794 8147 3823 7877 4822
4809 3297 8518 4972 9754 6854 3271 7891 8882 1052 3197 6035 5628 7674 7931 8085 8970 7733 4745 8785
7536 1511 6964 4763 5409 7032 8963 8576 3411 5853 3316 1267 7851 2735 6953 2970 1810 6830 5576 6903
2241 1575 2379 4679 9519 9290 4802 1562 3509 8365 6777 5143 5610 1061 7880 1935 5793 7023 5629 9571
2480 5937 4612 8890 1964 8532 3309 9737 8507 1849 8544 1500 9282 6288 2137 4730 4239 3473 4643 6377
7341 2881 3430 5815 1972 6629 3817 4547 7561 4779 6578 6114 4972 5505 7515 1800 4784 2272 4502 7541
7665 8607 2022 8192 2605 1346 4155 8725 8167 7022 6136 3615 6057 6329 8671 2033 3151 2249 5981 6412
9046 3353 8650 6965 4179 1248 5659 5219 8083 5615 3821 4436 9217 7356 3914 5717 3734 3765 4435 7210
8951 5013 2951 7401 2329 5686 6530 9581 6539 6881 8634 2663 2916 3019 8529 5645 8201 9270 1939 7275
6429 1531 6322 9586 2793 7968 4001 9665 7624 4369 6245 5146 9567 6801 6064 6199 3210 6753 2586 7795
5771 8507 7973 1470 1475 6896 6781 6572 8412 8557 8255 5268 8960 7251 9214 2489 6920 9917 3810 4605
9116 7950 3715 1697 4703 2868 8673 3106 2579 1074 3992 3547 4279 3149 3396 6081 6221 1125 9358 2471
8360 1526 4116 9278 6325 5175 5533 4107 7522 7599 7711 9211 1752 2431 8321 3844 3579 1047 3987 8487
7600 2401 8748 8945 2078 1519 4614 4576 5706 4040 9358 1928 1327 6699 5258 2846 3418 8310 1249 3866
7796 8668 4087 4258 8992 8996 4617 5997 2527 8204 8927 1456 9340 2088 1605 2299 9878 8347 7789 2122
8372 1102 4243 4208 1651 7861 4947 7802 4704 6204 4455 6012 8494 9060 3747 2786 2136 1830 7424 8309
6919 4420 2031 5399 2652 7219 4048 7013 5094 5276 4225 5976 4157 6722 8765 4679 1604 4986 5033 2623
4015 2297 3067 6261 6623 4577 4589 4747 6659 7667 7853 4040 6393 9606 7219 9334 1316 3430 9963 5187
4998 3735 9884 2990 1374 8436 6674 3018 5714 9352 8708 8789 7879 2965 1444 4671 4743 9817 6066 8057
6996 9609 2884 4601 7287 3432 4145 8858 6857 8624 4531 6579 1615 2894 4521 3274 5237 1093 3317 9289
7117 1850 3210 8010 2512 1394 4718 9332 5593 4118 4995 3994 5063 9426 1709 5128 4997 9287 1907 9068
4258 7328 6490 2603 5333 5093 8070 2116 8489 1994 7098 7409 1463 4268 9509 2358 1192 2460 5031 6292
4911 1192 1012 2494 5276 8981 3540 3306 8869 6678 7879 7526 8847 6270 7653 3109 6955 9760 8520 8673
6328 7277 7818 3285 9398 4929 4639 1617 4023 1051 9320 4955 6580 6481 3824 9611 2863 6492 6281 6203

【答案提交】

  这是一道结果填空的题,你只需要算出结果后提交即可。本题的结果为一个整数,在提交答案时只填写这个整数,填写多余的内容将无法得分。

解题思路:暴力枚举

参考答案:

171248

C++代码】:

#include<iostream>
using namespace std;
int a[55][55],max_;
int check(int h,int l)
{int sum=0;for(int i=h;i<=h+4;i++)for(int j=l;j<=l+4;j++)sum+=a[i][j];return sum;
}
int main()
{for(int i=0;i<30;i++)for(int j=0;j<20;j++)cin>>a[i][j];for(int i=0;i<30;i++)for(int j=0;j<20;j++)if(i+4<30&&j+4<20){max_=max(max_,check(i,j));}cout<<max_;
}
第六题


【问题描述】

  小蓝要上一个楼梯,楼梯共有 n 级台阶(即小蓝总共要走 n 级)。小蓝每一步可以走 1 级、2 级或 3 级台阶。
  请问小蓝至少要多少步才能上到楼梯顶端?

【输入格式】

  输入一行包含一个整数 n 。

【输入格式】

  输出一行包含一个整数,表示答案。

输入样例:

9

输出样例:

3

【评测用例规模与约定】

  对于所有评测用例,1 <= n <= 10000 。

解题思路:找规律

参考答案:

C++代码】:

#include<iostream>
using namespace std;
int main()
{int n;cin>>n;int sum;if(n%3==0) cout<<n/3;else cout<<n/3+1;return 0;
}
第七题

【问题描述】

  给定一个仅包含数字字符的字符串,请统计一下这个字符串中出现了多少个值为奇数的数位。

【输入格式】

  输入一行包含一个字符串,仅由数字字符组成。

【输出格式】

  输出一行包含一个整数,表示答案。

输入样例1:

123455

输出样例1:

4

输入样例2:

111222333111222333111222333

输出样例2:

18

【评测用例规模与约定】

  对于所有评测用例,1 <= 字符数量 <= 10000 。

 

解题思路:枚举

参考答案:

C++代码】:

#include<iostream>
using namespace std;
int main()
{string s;cin>>s;int sum=0;for(int i=0;i<s.size();i++)if((s[i]-'0')&1) sum++;cout<<sum;return 0;
}
第八题

【问题描述】

  对于一个序列 a[1], a[2], …, a[n],如果 a[i] 满足 a[i]<a[i-1] 且 a[i]<a[i+1],则称 a[i] 是一个极小值,如果如果 a[i] 满足 a[i]>a[i-1] 且 a[i]>a[i+1],则称 a[i] 是一个极大值。
  给定一个序列,请找到极小值中最大的和极大值中最小的。

【输入格式】

  输入的第一行包含一个整数 n ,表示序列的长度。
  第二行包含 n 个整数,相邻的整数之间使用一个空格分隔,表示给定的序列。

【输出格式】

  输出一行包含两个整数,用一个空格分隔,分别表示极小值中最大的和极大值中最小的。输入保证至少存在一个极小值,至少存在一个极大值。

输入样例:

8
1 8 2 4 4 3 5 3

输出样例:

3 5

【评测用例规模与约定】

  对于所有评测用例,1 <= n <= 1000,0 <= a[i] <= 10000。

解题思路:枚举

参考答案:

C++代码】:

#include<iostream>
#include<algorithm>
using namespace std;
const int N=1e5+5;
int a[N],b[N],c[N],n,k1,k2;
int main()
{cin>>n;for(int i=1;i<=n;i++) cin>>a[i];for(int i=2;i<n;i++){if(a[i]>a[i-1]&&a[i]>a[i+1])b[k1++]=a[i];if(a[i]<a[i-1]&&a[i]<a[i+1])c[k2++]=a[i];}sort(b,b+k1);sort(c,c+k2);cout<<c[k2-1]<<' '<<b[0];return 0;
}

第九题

【问题描述】

  对于一个字符矩阵,其中的一些字符构成字母 Y 是指存在一个中间字符,从这个中间字符向下、向左上(45度)、向右上(45度)的字符都与中间的字符相同。
  字母 Y 的长度指同时向 3 个方向的相同字母延伸的最大距离。
  例如,下图中所有的 1 组成一个字母 Y,长度为 3。
  又如,下图中以第 5 行第 6 列为中心也构成一个字母 Y (由字符 A 构成),长度为 1 。
  再如,下图中以第 4 行第 3 列为中心也构成一个字母 Y (由字符 0 构成),长度为 2

  1000001010001000101000001AAA00010A000010A000010A0

给定一个字符矩阵,请找出能构成字母 Y 的最大长度,如果无法构成字母 Y,请输出 0 。

【输入格式】

  输入的第一行包含两个整数 n, m ,用一个空格分隔,表示字符矩阵的行数和列数。
  接下来 n 行,每行包含 m 个字符,表示字符矩阵。

【输出格式】

  输出一行包含一个整数,表示答案。

输入样例:

7 7
1000001
0100010
0010100
0001AAA
00010A0
00010A0
00010A0

输出样例:

3

【评测用例规模与约定】

  对于50%的评测用例,1 <= n, m <= 100。
  对于所有评测用例,1 <= n, m <= 1000,字符矩阵中仅包含数字字符和大写英文字母。

解题思路:深搜

参考答案:

C++代码】:

#include<iostream>
using namespace std;
const int N=1005;
char a[N][N];
int n,m,sum1,sum2,sum3,max_;
void dfs1(int x,int y)
{if(x<0||x>=n||y<0||y>=m||a[x][y]!=a[x+1][y+1]) return ;sum1++;dfs1(x-1,y-1);
}
void dfs2(int x,int y)
{if(x<0||x>=n||y<0||y>=m||a[x][y]!=a[x+1][y-1]) return ;sum2++;dfs2(x-1,y+1);
}
void dfs3(int x,int y)
{if(x<0||x>=n||y<0||y>=m||a[x][y]!=a[x-1][y]) return ;sum3++;dfs3(x+1,y);
}
int main()
{cin>>n>>m;for(int i=0;i<n;i++)for(int j=0;j<m;j++)cin>>a[i][j];for(int i=0;i<n;i++)for(int j=0;j<m;j++){int min_=0x3f3f3f3f;sum1=sum2=sum3=0;if(i-1<0||j-1<0||j+1>=m||i+1>=n) continue;if(a[i][j]!=a[i-1][j-1]||a[i][j]!=a[i-1][j+1]||a[i][j]!=a[i+1][j]) continue;dfs1(i-1,j-1);dfs2(i-1,j+1);dfs3(i+1,j);min_=min(min_,sum1);min_=min(min_,sum2);min_=min(min_,sum3);max_=max(max_,min_);}cout<<max_;
}
第十题

【问题描述】

  小蓝要上一个楼梯,楼梯共有 n 级台阶(即小蓝总共要走 n 级)。小蓝每一步可以走 a 级、b 级或 c 级台阶。
  请问小蓝总共有多少种方案能正好走到楼梯顶端?

【输入格式】

  输入的第一行包含一个整数 n 。
  第二行包含三个整数 a, b, c 。

【输出格式】

  输出一行包含一个整数,表示答案。答案可能很大,请输出答案除以 1000000007 后的余数。

输入样例1:

4
1 2 3

输出样例1:

7

输入样例2:

7
2 4 6

输出样例2:

0

【评测用例规模与约定】

  对于 30% 评测用例,1 <= a < b < c <= n <= 50。
  对于 60% 评测用例,1 <= a < b < c <= n <= 1000。
  对于所有评测用例,1 <= a < b < c <= n <= 1000000。

解题思路:欧几里得+动态规划

参考答案:

C++代码】:

 

#include<iostream>
#define int long long
using namespace std;
const int N=1e6+5;
int dp[N],n,a,b,c;
bool GSD()
{if(n%a==0||n%b==0||n%c==0)return true;for(int i=0;i*a<=n;i++)if((n-i*a)%b==0) return true;for(int i=0;i*a<=n;i++)if((n-i*a)%c==0) return true;for(int i=0;i*b<=n;i++)if((n-i*b)%c==0) return true;return false;
}
int Count_Ways()
{dp[0]=1;for(int i=1;i<=n;i++)for(int j=0;j<3;j++){int step=(j==0)?a:((j==1)?b:c);if(i>=step)dp[i]+=dp[i-step];}return dp[n];
}
signed main()
{cin>>n>>a>>b>>c;if(GSD()) cout<<Count_Ways();else cout<<0;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/718692.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

FolkMQ 是怎样进行消息的事务处理?

FolkMQ 提供了二段式提交的事务提交的机制&#xff08;TCC 模型&#xff09;。允许生产者在发送消息时绑定到一个事务中并接收事务的管理&#xff0c;以确保消息的原子性&#xff08;要么全成功&#xff0c;要么全失败&#xff09;。在 FolkMQ 中&#xff0c;事务是通过 MqTran…

1、EmlogCms代码审计

一、SQL注入 1、后台标签删除处存在1处sql注入 漏洞条件 ● 漏洞url: http://emlog6.0.com/admin/tag.php?actiondell_all_tag ● 漏洞参数&#xff1a;tag[xx] ● 是否存在限制&#xff1a;无 ● 是否还有其他条件&#xff1a;actiondell_all_tag,token复现 POST /admin…

撸chatgpt3.5 api backend-api 对接wxbot

功能是实现 web 转api 对接wxbot用&#xff0c; 直接上代码&#xff0c; 1.获取wss url def get_register_websocket():# 请求头url "https://chat.openai.com/backend-api/register-websocket"payload {}headers {Authorization: Bearer eyJhbGxxxxxxxxxxxxx…

docker的网络配置

文章目录 1、网络模式1.1、bridge模式(默认模式)1.2、host模式 2、bridge模式3、自定义网络 1、网络模式 Docker在创建容器时有四种网络模式&#xff1a;bridge/host/container/none&#xff0c;bridge为默认不需要用–net去指定&#xff0c;其他三种模式需要在创建容器时使用…

【力扣 - 最长连续数组】

题目描述 给定一个未排序的整数数组 nums &#xff0c;找出数字连续的最长序列&#xff08;不要求序列元素在原数组中连续&#xff09;的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1&#xff1a; 输入&#xff1a;nums [100,4,200,1,3,2] 输出&…

Linux命令:uniq命令和wc命令

目录 1 uniq命令1.1 uniq简介1.2说明1.3案例1、默认输出2、输出重复行3、比较一行中的部分字符4、忽略大小写5、只显示唯一的行 2.4 uniq和sort命令配合使用1、文本统计2、统计IP连接数并排序 2 wc命令2.1 wc简介2.2 说明2.3 案例1、默认输出2、输出字节、字符数、单词数 总结 …

案例介绍:汽车维修系统的信息抽取技术与数据治理应用(开源)

一、引言 在当今汽车产业的快速发展中&#xff0c;软件已经成为提升车辆性能、安全性和用户体验的关键因素。从车载操作系统到智能驾驶辅助系统&#xff0c;软件技术的进步正在重塑我们对汽车的传统认知。我有幸参与了一个创新项目&#xff0c;该项目专注于开发和集成先进的汽…

关于 svg path 路径坐标 精度误差问题

<svg width"2838.739990" height"2482.179932" viewBox"0 0 2838.74 2482.18" fill"none" xmlns"http://www.w3.org/2000/svg" xmlns:xlink"http://www.w3.org/1999/xlink"><path id"矢量 12"…

原理篇-- 定时任务xxl-job-服务端(admin)项目启动过程--JobRegistryHelper 初始化 (4)

文章目录 前言一、JobRegistryHelper 作用&#xff1a;二、JobRegistryHelper 源码介绍&#xff1a;2.1 初始化start() 方法&#xff1a;2.1.1 registryOrRemoveThreadPool 执行器注册和移除&#xff1a;2.1.2 registryMonitorThread 执行器注册监控线程&#xff1a; 2.2 toSto…

折线图实现柱状阴影背景的demo

这个是一个由官网的基础折线图实现的流程&#xff0c;将涉及到的知识点附上个人浅薄的见解&#xff0c;源码在最后&#xff0c;需要的可自取。 折线图 成果展示代码注解参数backgroundColordataZoomlegendtitlexAxisyAxisgridseries 源码 成果展示 官网的基础折线图&#xff…

猫耳语音下载(mediadown)

猫耳语音下载(mediadown) 一、介绍 猫耳语音下载,能够帮助你下载猫耳音频节目。如果你是会员,它还能帮你下载会员节目。 二、下载地址 下载:猫耳语音下载(mediadown) 百度网盘下载:猫耳语音下载(mediadown) 三、安装教程 将下载的文件解压到D:\xibinhui,D:\Pr…

Unity RectTransform·屏幕坐标转换

RectTransform转屏幕坐标 分两种情况 Canvas渲染模式为Overlay时&#xff0c;使用此方式 public Rect GetScreenCoordinatesOfCorners(RectTransform rt) {var worldCorners new Vector3[4];rt.GetWorldCorners(worldCorners);var result new Rect(worldCorners[0].x,world…

Manomotion 实现AR手势互动-解决手势无效的问题

之前就玩过 Manomotion &#xff0c;现在有新需求&#xff0c;重新接入发现不能用了&#xff0c;不管什么办法&#xff0c;都识别不了手势&#xff0c;我记得当初是直接调用就可以的。 经过研究发现&#xff0c;新版本SDK改了写法。下边就写一下新版本的调用&#xff0c;并且实…

好书推荐 《Excel函数与公式应用大全for Excel 365 Excel 2021》

一.基本介绍 1.什么是 Excel? Excel 是微软公司开发的一款电子表格软件&#xff0c;是 Microsoft Office 套件的一部分。它被广泛用于数据处理、分析、可视化和管理等方面。Excel 提供了丰富的功能&#xff0c;使用户能够创建、编辑、存储和分享各种类型的数据表格。 2.Exc…

Golang Channel 详细原理和使用技巧

1.简介 Channel(一般简写为 chan) 管道提供了一种机制:它在两个并发执行的协程之间进行同步&#xff0c;并通过传递与该管道元素类型相符的值来进行通信,它是Golang在语言层面提供的goroutine间的通信方式.通过Channel在不同的 goroutine中交换数据&#xff0c;在goroutine之间…

代码随想录Day66 | 图的DFS与BFS

代码随想录Day66 | 图的DFS与BFS DFS797.所有可能的路径无向图和有向图的处理 BFS200.岛屿数量 DFS 文档讲解&#xff1a;代码随想录 视频讲解&#xff1a; 状态 本质上就是回溯算法。 void dfs(参数) {if (终止条件) {存放结果;return;}for (选择&#xff1a;本节点所连接的…

『运维备忘录』之 Shell 内置命令大集合

前言 在 Shell 中&#xff0c;有许多内置命令可用于执行各种任务&#xff0c;包括文件操作、进程管理、环境变量设置等。本文将详细介绍一些常见的Shell内置命令及其示例用法。 命令描述alias创建命令别名&#xff0c;用于将命令或命令组合关联到用户自定义名称bg将作业放入后…

Qt textBrowser的Html相关

Qt textBrowser的Html相关 Qt textBrowser的Html相关 Qt textBrowser的Html相关 一开始就想要一个简单的功能&#xff0c;点一下按钮&#xff0c;添加的文字居中显示&#xff0c;再点一下按钮&#xff0c;添加的文字变更颜色居右显示。 但是&#xff1a; ui->textEdit-&g…

WordPress免费的远程图片本地化下载插件nicen-localize-image

nicen-localize-image&#xff08;可在wordpress插件市场搜索下载&#xff09;&#xff0c;是一款用于本地化文章外部图片的插件&#xff0c;支持如下功能&#xff1a; 文章发布前通过编辑器插件本地化 文章手动发布时自动本地化 文章定时发布时自动本地化 针对已发布的文章…

python类的属性、方法、静态方法、静态方法类内部的调用、直接调用与实例化调用

设计者&#xff1a;ISDF工软未来 版本&#xff1a;v1.0 日期&#xff1a;2024/3/4 class Restaurant:餐馆类def __init__(self,restaurant_name,cuisine_type):#类的属性self.restaurant_name restaurant_nameself.cuisine_type cuisine_type# self.stregth_level 0def desc…