当前位置: 首页 > news >正文

可以做哪些网站有哪些内容hao123网址大全浏览器设为主页

可以做哪些网站有哪些内容,hao123网址大全浏览器设为主页,化妆品网站推广策划书,钢材技术支持东莞网站建设题目描述与示例 题目描述 小红有一个长度为n的数组a#xff0c;她将对数组进行m次操作#xff0c;每次操作有两种类型#xff1a; 将数组中所有值为奇数的元素加上x将数组中所有值为偶数的元素加上x 请你输出m次操作后的数组 输入描述 第一行两个整数n和m#xff0c;表示…题目描述与示例 题目描述 小红有一个长度为n的数组a她将对数组进行m次操作每次操作有两种类型 将数组中所有值为奇数的元素加上x将数组中所有值为偶数的元素加上x 请你输出m次操作后的数组 输入描述 第一行两个整数n和m表示数组长度和操作次数 第二行n个整数表示数组a的初始值。 接下来m行每行两个整数t和xt表示一次操作的类型和参数t为1表示第一种操作t为2表示第二种操作 1 n, m 10^5 1 ai, x 10^5 1 t 2 输出描述 输出一行包含n个整数表示m次操作后的数组 示例 输入 5 3 1 2 3 4 5 1 2 2 2 1 3 输出 6 4 8 6 10 说明 第一次将所有奇数元素加 2数组变为[3,2,5,4,7] 第二次将所有偶数元素加 2数组变为[3,4,5,6,7] 第三次将所有奇数元素加 3数组变为[6,4,8,6,10] 时空限制 时间限制 C/C 1000MS其他语言 2000MS 内存限制 C/C 256M其他语言 512M 解题思路 注意到一个非常重要的数学性质对于任意两个正整数相加 奇数 奇数 偶数 偶数 偶数 偶数 奇数 偶数 奇数 偶数 奇数 奇数 假设一开始数组中既存在奇数也存在偶数。在遇到第一个为奇数的x时若 t 1则数组中所有的奇数都要加上x相加完毕后所有元素都变成偶数t 2则数组中所有的偶数都要加上x相加完毕后所有元素都变成奇数 我们分别用isAllOdd和isAllEven两个变量来表示数组的状态。当 isAllOdd和isAllEven均为False时说明此时数组中既存在奇数也存在偶数。isAllOdd True此时数组中的元素均为奇数isAllEven True此时数组中的元素均为偶数注意不可能出现isAllOdd和isAllEven均为True的情况。 设置两个变量oddx和evenx分别表示初始数组中的奇数和偶数在m次操作中的增量。那么在遍历过程中所有元素的变化可以依照下表进行 x是奇数x是偶数t1 数组所有奇数加x数组中有奇数有偶数 isAllEven False and isAllOdd Falseoddx x 所有的奇数变为偶数 isAllEven Trueoddx x 数组的奇偶性不变数组中只有奇数 isAllOdd Trueoddx x evenx x 数组的奇偶性反过来 isAllEven not isAllEven isAllOdd not isAllOddoddx x evenx x 数组的奇偶性不变数组中只有偶数 isAllEven True不做任何处理t2 数组所有偶数加x数组中有奇数有偶数 isAllEven False and isAllOdd Falseevenx x 所有的偶数变为奇数 isAllOdd Trueevenx x 数组的奇偶性不变数组中只有偶数 isAllEven Trueoddx x evenx x 数组的奇偶性反过来 isAllEven not isAllEven isAllOdd not isAllOddoddx x evenx x 数组的奇偶性不变数组中只有奇数 isAllOdd True不做任何处理 代码 Python n, m map(int, input().split()) a list(map(int, input().split())) oddx 0 evenx 0 isAllOdd False isAllEven False for _ in range(m): t, x map(int, input().split()) # x为奇数的情况 if x % 2 1: # 若此时数组中同时存在偶数和奇数 if isAllEven False and isAllOdd False: # 若是操作1数组中所有奇数加上x if t 1: oddx x # 数组中所有的元素都变成偶数 isAllEven True # 若是操作2数组中所有偶数加上x elif t 2: evenx x # 数组中所有的元素都变成奇数 isAllOdd True # 已经是全偶数或全奇数的情况变号elif (isAllEven and t 2) or (isAllOdd and t 1):oddx xevenx xisAllEven not isAllEvenisAllOdd not isAllOdd # x为偶数的情况 else:# 若此时数组中同时存在偶数和奇数if isAllEven False and isAllOdd False:# 若是操作1数组中所有奇数加上xif t 1:oddx x# 若是操作2数组中所有偶数加上xelse:evenx x# 已经是全偶数或全奇数的情况不变号elif (isAllEven and t 2) or (isAllOdd and t 1):oddx xevenx x遍历原数组所有奇数加上oddx所有偶数加上evenx ans [a[i] oddx if a[i] % 2 1 else a[i] evenx for i in range(n)] print( .join(map(str, ans))) Java import java.util.Scanner; public class Main { public static void main(String[] args) { Scanner sc new Scanner(System.in); int n sc.nextInt(); int m sc.nextInt(); int[] a new int[n]; for (int i 0; i n; i) { a[i] sc.nextInt(); } int oddx 0;int evenx 0;boolean isAllOdd false;boolean isAllEven false;for (int i 0; i m; i) {int t sc.nextInt();int x sc.nextInt();if (x % 2 1) {if (!isAllEven !isAllOdd) {if (t 1) {oddx x;isAllEven true;} else if (t 2) {evenx x;isAllOdd true;}} else if ((isAllEven t 2) || (isAllOdd t 1)) {oddx x;evenx x;isAllEven !isAllEven;isAllOdd !isAllOdd;}} else {if (!isAllEven !isAllOdd) {if (t 1) {oddx x;} else {evenx x;}} else if ((isAllEven t 2) || (isAllOdd t 1)) {oddx x;evenx x;}}}int[] ans new int[n];for (int i 0; i n; i) {if (a[i] % 2 1) {ans[i] a[i] oddx;} else {ans[i] a[i] evenx;}}for (int i 0; i n; i) {if (i n - 1) {System.out.print(ans[i] );} else {System.out.println(ans[i]);}} }} C #include #include using namespace std; int main() { int n, m; cin n m; vector a(n); for (int i 0; i n; i) {cin a[i]; }int oddx 0; int evenx 0; bool isAllOdd false; bool isAllEven false;for (int i 0; i m; i) {int t, x;cin t x;if (x % 2 1) {if (!isAllEven !isAllOdd) {if (t 1) {oddx x;isAllEven true;} else if (t 2) {evenx x;isAllOdd true;}} else if ((isAllEven t 2) || (isAllOdd t 1)) {oddx x;evenx x;isAllEven !isAllEven;isAllOdd !isAllOdd;}} else {if (!isAllEven !isAllOdd) {if (t 1) {oddx x;} else {evenx x;}} else if ((isAllEven t 2) || (isAllOdd t 1)) {oddx x;evenx x;}} }vectorint ans(n);for (int i 0; i n; i) {if (a[i] % 2 1) {ans[i] a[i] oddx;} else {ans[i] a[i] evenx;} }for (int i 0; i n; i) {if (i n - 1) {cout ans[i] ;} else {cout ans[i] endl;} }return 0;} 时空复杂度 时间复杂度O(mn)。一共有m次操作最后修改数组需要遍历n个元素。 空间复杂度O(1)。仅需若干常数变量 华为OD算法/大厂面试高频题算法练习冲刺训练 华为OD算法/大厂面试高频题算法冲刺训练目前开始常态化报名目前已服务100同学成功上岸 课程讲师为全网50w粉丝编程博主吴师兄学算法 以及小红书头部编程博主闭着眼睛学数理化 每期人数维持在20人内保证能够最大限度地满足到每一个同学的需求达到和1v1同样的学习效果 60天陪伴式学习40直播课时300动画图解视频300LeetCode经典题200华为OD真题/大厂真题还有简历修改、模拟面试、专属HR对接将为你解锁 可上全网独家的欧弟OJ系统练习华子OD、大厂真题 可查看链接 OD算法冲刺训练课程表 OD真题汇总(持续更新) 绿色聊天软件戳 od1336了解更多
http://wiki.neutronadmin.com/news/72705/

相关文章:

  • 网站建设公司 信科网络无锡设计师网站
  • 网站规划怎么做电商网站里的图片
  • 做面食网站优化网站搜索
  • 建设门户网站价格兰州网站开发公司
  • 选择网站建设公司应该注意什么网站板块设计有哪些
  • 个人做房产网站小程序app开发多少钱
  • 网站广告条怎么做wordpress登录地址加密
  • 食品行业网站开发怎么制作网站?
  • 网站优化推广服务网站如何调用百度地图
  • 如何构建网站平台数学网站怎么做
  • phpwind网站公司网站开发费算什么费用
  • 十大网站建设排名四川省城乡住房建设厅网站
  • 安阳河南网站建设注册网页代码
  • 网站建设毕业答辩ppt怎么写有没有做网站源代码修改的
  • 网站 被黑wordpress空间安装教程
  • 海南省城乡建设部网站首页怎么用linux做网站服务器
  • 网站建设视频代码wordpress安装图片不显示
  • 网站登录界面模板html龙岩
  • 有哪些可以做策划方案的网站怎么让网站绑定域名
  • 网站用什么服务器wordpress 文章主题图
  • 做网站的那些个人工作室公司网站建设需要注意事项
  • 企业建设网站价格网站优化总结报告
  • 有那些网站可以做推广紫色 网站
  • 淘宝网站建设评价表什么网站有教做变蛋的
  • 网站开发程序有哪些常熟市维摩剑门绿茶网站建设目标
  • 零基础学pytho 网站开发购物网站建设多少钱
  • 网页制作与网站建设完全学习手册下载网站做哪些比较有意思
  • 商丘网站建设公司网站建设对接模版
  • vue做的网站有什么搜索数据
  • 南京做网站具体需要多少钱桐城市美好乡村建设办公室网站