ACM实训冲刺第二十二天

【碎碎念】今天学习ACM时间有点紧,只有30分钟,能写到哪算哪吧


人见人爱A^B(数值运算与字符串处理)

这段代码实现的是模幂运算,具体说是计算 A^Bmod1000 的值。模幂运算是一种在计算机科学和密码学中常用的算法,特别是用于处理大整数的幂运算时,通过取模可以控制结果的大小,减少计算量和避免整数溢出。

该算法采用了循环(for 循环)来实现指数 B 次的乘法操作,并在每次乘法后都对结果取模 1000,这是快速幂算法的一个简化版本

#include<stdio.h>
#include<math.h>
int main(){int A;int B;int C=1;while(scanf("%d %d",&A,&B) && A!=0,B!=0){for(int i=0;i<B;i++){C=(C*A)%1000;}printf("%d\n",C%1000);C=1;}return 0;
}

Tokitsukaze and All Zero Sequence (数据处理与逻辑判断)

这段代码属于“数据处理与逻辑判断”题型。代码的主要功能是处理输入的数据(整数序列),并根据一定的逻辑规则判断和计算输出结果。

具体来说,程序首先读取一个整数 t,表示有 t 组测试数据。对于每组数据,程序执行以下操作:

  1. 读取一个整数 n,表示接下来要输入的整数序列长度。
  2. 读取 n 个整数并存储在数组 a 中,同时使用另一个数组记录每个数字出现的次数。
  3. 判断数组中的元素是否有重复(通过标记变量 flag),以及是否包含数字0。
  4. 根据以下逻辑输出结果:
    • 如果数组中有数字0,则输出序列中非0数字的个数。
    • 如果没有数字0且所有数字都是唯一的,则输出当前序列长度加1,意味着可以在序列末尾添加一个新数字保持唯一性。
    • 如果有重复数字(不论是否含0),则输出当前序列长度,因为已经不满足所有数字唯一的要求。
#include<stdio.h>
int main(){int t;scanf("%d",&t);for(int i=0;i<t;i++){int n;int flag=0;int ch;int a[101]={0};scanf("%d",&n) ;for(int j=0;j<n;j++){scanf("%d",&ch);a[ch]++;if(a[ch]>1)flag=1;}if(a[0]>0){printf("%d\n",n-a[0]);}else{if(flag==0)printf("%d\n",n+1);if(flag==1)printf("%d\n",n);}}return 0;
}

Aggressive cows(二分查找)

这段代码实现的是一个二分查找(Binary Search)算法的应用问题,具体是解决“最长连续子序列的最小间距”问题的一个变种。给定一个整数数组和一个整数 c,要求找到一个最小的间距 m,使得在数组中能选出 c 个不重叠的连续子序列,每个子序列中的元素之间的间距至少为 m。

代码流程如下:

  1. 输入序列长度 n 和需要放置的位置数量 c。
  2. 读取 n 个整数到数组 a 中,并对数组进行排序。
  3. 定义二分搜索的范围为数组中的最小值 l 到最大值 r。
  4. 在二分搜索的过程中,使用函数 fun() 判断以当前中点 mid 作为间距时,能否找到至少 c 个符合条件的位置。如果可以,则说明答案至少为 mid,并且在 mid 的右侧继续搜索;如果不满足条件,则在mid 的左侧搜索。
  5. 最终得到的ans 即为所求的最小间距。
#include<iostream> 
#include<cstdio>
#include<algorithm>
#include<cstdlib>
using namespace std;
int n,c;
int a[100005];
bool fun(int m) {int cnt=1,cur=0,next=1;while(next<n){next++;if(a[next]-a[cur]>=m){cnt++;cur=next;}}if(cnt>=c) return true;else return false;
}int main(){scanf("%d%d",&n,&c);for(int i=0;i<n;i++){scanf("%d",&a[i]);}int l=a[0],r=a[n-1];int ans=0;sort(a,a+n);while(l<=r){        int mid=(l+r)/2;if(fun(mid)){ans=mid;l=mid+1;}else{r=mid-1;}}printf("%d",ans);return 0;
}

题型统计

练习题名称数学计算与序列求和数值运算与字符串处理频率统计题数据处理与逻辑判断0-1背包问题最大覆盖半径二分查找
SUM Problem
A+B problem
Anton and letters
Sum of digits
寒冰王座
Charm Bracelet
Vanya and Lanterns
Anton and Danik
人见人爱A^B
Tokitsukaze and All Zero Sequence
Aggressive cows

 

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

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

相关文章

初探Flask:Pycharm社区版创建Flask项目

文章目录 一、创建工程二、引入Flask库1.使用命令行安装Flask2.在PyCharm中安装Flask 三、创建Flask框架基本文件四、运行项目 本文将带您一步步创建一个简单的Flask项目&#xff0c;包括设置Python环境、安装Flask库以及创建基本的项目结构。 一、创建工程 首先&#xff0c;确…

SwanLab载入omegaconf配置教程

OmegaConf 是一个用于处理配置的 Python 库&#xff0c;尤其适用于需要灵活配置和配置合并的场景。 OmegaConf 与swanlab的集成非常简单&#xff0c;直接将omegaconf对象传递给swanlab.config&#xff0c;即可记录为超参数&#xff1a; from omegaconf import OmegaConf impo…

云原生网关 MSE-Higress

云原生网关 MSE-Higress 什么是云原生网关MSEMSE测评产品文档产品能力产品控制台 MSE与其他网关 什么是云原生网关MSE 在体验云原生网关 MSE-Higress功能之前&#xff0c;先了解一下什么是云原生网关 MSE&#xff0c;简单的说就是MSE就是遵循开源 Ingress/Gateway API 标准的下…

【java程序设计期末复习】chapter2 基本数据类型与数组

基本数据类型与数组 一&#xff0c;标识符和关键字 标识符 定义 用来标识类名、变量名、方法名、类型名、数组名、文件名的有效字符序列称为标识符&#xff0c;简单地说&#xff0c;标识符就是一个名字 。 性质 &#xff08;1&#xff09;标识符由字母、下划线、美元符号和…

008-Linux后台进程管理(作业控制:、jobs、fg、bg、ctrl + z、nohup)

文章目录 前言 1、& 2、ctrl z 3、jobs 4、fg&#xff1a;将后台进程调到前台执行 5、bg&#xff1a;将一个暂停的后台进程变为执行 6、&和nohup 总结 前言 有时候我们需要将一个进程放到后台去运行&#xff0c;或者将后台程序切换回前台&#xff0c;这时候就…

03 Prometheus+Grafana可视化配置

03 PrometheusGrafana可视化配置 大家好&#xff0c;我是秋意零。接上篇Prometheus入门安装教程 grafana官网下载安装包比较慢&#xff0c;如果没有魔法。可关注公众号【秋意零】回复101获取 Grafana官网下载&#xff1a;https://grafana.com/grafana/download 这里采用的二进制…

使用C语言实现学生信息管理系统

前言 在我们实现学生信息管理系统的过程中&#xff0c;我们几乎会使用到C语言最常用最重要的知识&#xff0c;对于刚学习完C语言的同学来说是一次很好的巩固机会&#xff0c;其中还牵扯到数据结果中链表的插入和删除内容。 实现学生信息管理系统 文件的创建与使用 对于要实现…

【小技巧】Keil C51 报错“*** ERROR L107: ADDRESS SPACE OVERFLOW****

软件&#xff1a;Keil C51 C51V961版本 电脑&#xff1a;Win10 报错提示&#xff1a; compiling System.c... linking... *** ERROR L107: ADDRESS SPACE OVERFLOW SPACE: DATA SEGMENT: ?DT?LCD LENGTH: 0034H Program Size: data174.0 xdata17 code1205 Target not create…

100个投资者99个选择使用这款EA,WeTrade发现1个事实

为什么100个投资者会有99个选择使用这款EA&#xff0c;是因为这款EA能提供两个版本吗?是因为能控制风险吗?都不是&#xff0c;WeTrade发现1个事实才是这么多投资者选择的原因&#xff0c;那就是能实现100%的盈利率。 我们都知道外汇狙击手EA提供两种版本&#xff0c;分别是标…

style 标签写在 body 前和 body 后有什么区别?

style 标签写在 body 前和 body 后有什么区别&#xff1f; 对比项<style> 放在 <body> 之前<style> 放在 <body> 之后渲染速度【优】所有样式信息在页面加载时可用&#xff0c;用户能够快速看到格式化后的页面【劣】浏览器需要先解析 body 内容再应用…

python常用文件路径切片及写脚本

常用文件路径切片 因为自己对路径切片这一块不是很熟悉,所以每次用都到处查浪费了不少时间,今天刚好又用到,整理一下: #绝对路径 video_path=r“E:\avfilm\pokes\qw0001.mp4” # 从绝对路径中提取完整文件名 video_name = os.path.basename(video_path) # 文件路径提取,用…

CSS变量 -- var() 使用教程

目录 1 CSS变量的基本使用1.1 变量定义1.1 变量使用1.3 全局/局部变量 2 CSS变量的参数3 CSS变量的拼接和计算3.1 拼接3.2 计算 4 JS 修改 CSS变量 CSS 自定义属性&#xff08;有时候也被称作CSS 变量或者级联变量&#xff09;&#xff0c;它的值可以在整个文档中重复使用。 复…

【TypeScript】ts中的Classes使用方法介绍

简言 TypeScript 完全支持 ES2015 中引入的类关键字。 与 JavaScript 语言的其他功能一样&#xff0c;TypeScript 添加了类型注解和其他语法&#xff0c;允许您表达类与其他类型之间的关系。 class类是一个较重要的知识。 Classes 类声明 ts中类的声明和js中的高度相似。 类…

MVC和Filter

目录 MVC和三层架构模型的联系 Filter 概念 作用 应用场景 步骤 简单入门 MVC和三层架构模型的联系 m-->model即模型是三层架构模型的业务层&#xff08;service&#xff09;和持久层(dao) v-->views即视图是三层架构模型的表现层(web) c-->controller即控制器也…

出现 java: Annotation processing is not supported for module cycles 解决方法

目录 前言1. 问题所示2. 原理分析3. 解决方法前言 对于循环依赖的问题,代码中遇到过两次,分别如下: 深度剖析Spring循环依赖(实战Bug)出现The dependencies of some of the beans in the application context form a cycle 解决方法(全)对于模块的依赖第一次遇到,如文…

【SpringMVC】_SpringMVC项目返回HTML与JSON

目录 1. SpringMVC项目返回HTML页面 2. SpringMVC项目返回JSON 2.1 程序演示 2.2 关于响应的Content-Type 2.2.1 接口为对象 2.2.2 接口为String 2.2.3 接口为Map 本专栏已介绍&#xff1a; 返回静态页面&#xff1a; 【Spring MVC】_SpringMVC项目返回静态页面_mvc 返…

一种基于高德Web API实现沿路画面的实现

概述 本文在mapboxGL框架下&#xff0c;分享一种基于高德Web API实现沿路画面的实现。 实现效果 实现 1. 实现思路 通过点击获取路径的起点和终点&#xff1b;将多次规划路径的结果连成一条线&#xff1b;当鼠标点击回到第一个点的时候结束绘制&#xff1b;绘制结束后将路径…

写代码之前一定要提前想好思路

就和写数学题目一样&#xff0c;在做题目之前要先把思路确立下来。可能是我早年做数学的时候老是着急做题目没怎么分析过题目&#xff0c;把这个习惯不自觉地代入了代码的写入当中。习惯的养成使得我即使明白了自己的问题也依然会不断的犯错&#xff0c;看来只有刻意地提醒自己…

Flutter 中的 Viewport 小部件:全面指南

Flutter 中的 Viewport 小部件&#xff1a;全面指南 Flutter 是一个现代的移动和 web 应用开发框架&#xff0c;它允许开发者以一种非常直观和高效的方式构建用户界面。在 Flutter 中&#xff0c;Viewport 是一个非常重要的小部件&#xff0c;它提供了一个滚动视口&#xff0c…

【MATLAB源码-第217期】基于matlab的16QAM系统相位偏移估计HOS算法仿真,对比补偿前后的星座图误码率。

操作环境&#xff1a; MATLAB 2022a 1、算法描述 高阶统计量&#xff08;HOS&#xff09;频偏估计算法 高阶统计量&#xff08;Higher Order Statistics, HOS&#xff09;频偏估计算法是一种先进的信号处理技术&#xff0c;广泛应用于现代数字通信系统中&#xff0c;以应对…