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

机试准备第11天

第一题是浮点数加法,目前写过最长的代码。

#include <stdio.h>
#include <string>
#include <iostream>
#include <vector>
using namespace std;
int main() {string str1;string str2;while (getline(cin, str1) && getline(cin, str2)) { //读入两个数int pointpos1, pointpos2; //确定小数点位置for (int i = 0; i < str1.size(); i++) {if (str1[i] == '.') pointpos1 = i;}for (int i = 0; i < str2.size(); i++) {if (str2[i] == '.') pointpos2 = i;}//分割小数部分与整数部分string integer1;string intrger2;string xiaoshu1;string xiaoshu2;integer1 = str1.substr(0, pointpos1);intrger2 = str2.substr(0, pointpos2);xiaoshu1 = str1.substr(pointpos1, str1.size() - pointpos1);xiaoshu2 = str2.substr(pointpos2, str2.size() - pointpos2);//将小数转化为0.XXXXX,位数相同的形式xiaoshu1.insert(0, "0");xiaoshu2.insert(0, "0");int size1 = xiaoshu1.size();int size2 = xiaoshu2.size();if (size1 > size2) {for (int i = 0; i < (size1 - size2); i++) {xiaoshu2.push_back('0');}} else if (size2 > size1) {for (int i = 0; i < (size2 - size1); i++) {xiaoshu1.push_back('0');}}//将小数填充为位数相同xiaoshu1.erase(xiaoshu1.begin() + 1);xiaoshu2.erase(xiaoshu2.begin() + 1);int size3 = xiaoshu1.size();string xiaoshu3 = xiaoshu1;vector<int> jingwei(size3);for (int i = 0; i < size3; i++) {jingwei[i] = 0;}for (int i = size3 - 1; i >= 1; i--) {if ((xiaoshu1[i] - '0') + (xiaoshu2[i] - '0') + jingwei[i] >= 10) {jingwei[i - 1]++;xiaoshu3[i] = '0' + ((xiaoshu1[i] - '0') + (xiaoshu2[i] - '0') - 10) +jingwei[i];} else xiaoshu3[i] = '0' + ((xiaoshu1[i] - '0') + (xiaoshu2[i] - '0')) +jingwei[i];}int zhengshujingwei = 0;if (jingwei[0] == 1) zhengshujingwei = 1;xiaoshu3[0] = '.';//printf("%d", zhengshujingwei);int sizeofzhengshu1 = integer1.size();int sizeofzhengshu2 = intrger2.size();if (sizeofzhengshu1 > sizeofzhengshu2) {for (int i = 0; i < (sizeofzhengshu1 - sizeofzhengshu2); i++) {intrger2.insert(0, "0");}} else if (sizeofzhengshu2 > sizeofzhengshu1) {for (int i = 0; i < (sizeofzhengshu2 - sizeofzhengshu1); i++) {integer1.insert(0, "0");}}integer1.insert(0, "0");intrger2.insert(0, "0");
//      printf("%s\n",integer1.c_str());
//      printf("%s\n",intrger2.c_str());int size5 = integer1.size();vector<int> jingwei2(size5);for (int i = 0; i < size5; i++) {jingwei2[i] = 0;}string res = integer1;for (int i = size5 - 1; i >= 1; i--) {if (i == (size5 - 1)) {if (((integer1[i] - '0') + (intrger2[i] - '0') + zhengshujingwei) + jingwei2[i]>= 10) {jingwei2[i - 1]++;res[i] = '0' + (integer1[i] - '0') + (intrger2[i] - '0') - 10 + jingwei2[i] +zhengshujingwei;} else {res[i] = '0' + (integer1[i] - '0') + (intrger2[i] - '0') + jingwei2[i] +zhengshujingwei;}} else {if ((integer1[i] - '0') + (intrger2[i] - '0') + jingwei2[i] >= 10) {jingwei2[i - 1]++;res[i] = '0' + (integer1[i] - '0') + (intrger2[i] - '0') - 10 + jingwei2[i];} else {res[i] = '0' + (integer1[i] - '0') + (intrger2[i] - '0') + jingwei2[i];}}}//printf("%s\n", res.c_str());if (jingwei2[0] == 1) res[0] = 1;else res.erase(res.begin());//printf("%s\n", res.c_str());//printf("%s\n", res.c_str());printf("%s", (res + xiaoshu3).c_str());}
}

第二题是w的密码。燃尽了。 

#include <stdio.h>
#include <vector>
#include <string>
#include <iostream>
#include <map>
using namespace std;
struct Word{char letter;int seq;
};
int main(){int k1,k2,k3;while(scanf("%d%d%d", &k1, &k2, &k3)!=EOF){cin.ignore();if(k1==0&&k2==0&&k3==0) break;string str1;getline(cin, str1);//读入字符串vector<Word> vec1;//第一组别字母的原始位置vector<Word> vec2;vector<Word> vec3;for(int i = 0; i<str1.size();i++){Word mid;mid.letter = str1[i];mid.seq = i;if(str1[i]>='a'&&str1[i]<='i') vec1.push_back(mid);else if(str1[i]>='j'&&str1[i]<='r') vec2.push_back(mid);else if((str1[i]>='s'&&str1[i]<='z')||str1[i]=='_') vec3.push_back(mid);}//记录3个组别元素出现的位置vector<Word> res1;//各组别字母的变换后位置vector<Word> res2;vector<Word> res3;for(int i = 0; i< vec1.size();i++){Word mid;mid.letter = vec1[(i+vec1.size() - (k1%vec1.size()))%vec1.size()].letter;mid.seq = vec1[i].seq;res1.push_back(mid);}for(int i = 0; i< vec2.size();i++){Word mid;mid.letter = vec2[(i+vec2.size() - (k2%vec2.size()))%vec2.size()].letter;mid.seq = vec2[i].seq;res2.push_back(mid);}for(int i = 0; i< vec3.size();i++){Word mid;mid.letter = vec3[(i+vec3.size() - (k3%vec3.size()))%vec3.size()].letter;mid.seq = vec3[i].seq;res3.push_back(mid);}map<int, char> map1;//记录改变后sfor(int i = 0; i < res1.size();i++){map1.insert({res1[i].seq, res1[i].letter});}for(int i = 0; i < res2.size();i++){map1.insert({res2[i].seq, res2[i].letter});}for(int i = 0; i < res3.size();i++){map1.insert({res3[i].seq, res3[i].letter});}for(int i = 0; i<str1.size();i++){str1[i] = map1[i];}
//		for(int i = 0; i<res1.size();i++){
//			printf("%c",res1[i].letter);
//		}printf("%s\n", str1.c_str());}
}

第三题是寻找变化前的01序列。

#include <stdio.h>
#include <string>
#include <iostream>
using namespace std;
int main(){int n;scanf("%d", &n);for(int i = 0; i < n;i++){char arr[200];scanf("%s", arr);string str = arr;int res = 0;for(int i = 0; i<str.size();i++){if(res == 5) res=0;else {if(str[i]=='1') res++;else res=0;printf("%c", str[i]);}}printf("\n");}
}

第四题是复制剪切。

#include <stdio.h>
#include <string>
using namespace std;
void copy(string &str, string &t, int l, int r){t.clear();for(int i =l; i<=r;i++){t.push_back(str[i]);}printf("%s\n", str.c_str());
}
void cut(string &str, string &t, int l, int r){t.clear();t = str.substr(l, r-l+1);string cutafter;for(int i = 0;i < str.size();i++){if(i <l || i>r) cutafter.push_back(str[i]);}str = cutafter;printf("%s\n", str.c_str());
}
void paste(string &str, string &t, int pos){str.insert(pos+1, t);printf("%s\n", str.c_str());
}
int main(){char arr[200];scanf("%s", arr);string str = arr;int n;scanf("%d", &n);string t;for(int i = 0;i<n;i++){char arr1[10];scanf("%s",arr1);//读入控制符string oper = arr1;if(oper == "COPY") {int l1,r1;scanf("%d%d", &l1, &r1);copy(str, t, l1,r1);}else if(oper == "CUT") {int l2,r2;scanf("%d%d", &l2, &r2);cut(str, t , l2, r2);}else if(oper == "PASTE") {int pos;scanf("%d", &pos);paste(str, t, pos);}}
}

第五题是skew数。

#include <stdio.h>
#include <string>
#include <cmath>
using namespace std;
int main() {char arr[100];while (scanf("%s", arr) != EOF) {string str = arr;long res = 0;int shuwei = 1;for (int i = str.size() - 1; i >= 0; i--) {res += (str[i] - '0') * (pow(2,shuwei) - 1);shuwei++;}printf("%ld\n", res);}
}

第六题是首字母大写,记住大写字母的ASCII值是小写字母的-32就行。

#include <stdio.h>
#include <string>
#include <iostream>
using namespace std;
int main() {string str;while (getline(cin, str)) {if (str[0] >= 'a' && str[0] <= 'z') str[0] = str[0] - 32;for (int i = 1; i < str.size(); i++) {if (str[i - 1] == ' ' || str[i - 1] == '\t' || str[i - 1] == '\r' ||str[i - 1] == '\n') {if (str[i] >= 'a' && str[i] <= 'z') str[i] = str[i] - 32;}}printf("%s\n", str.c_str());}
}

第七题是大整数排序,注意cmp函数的返回值。

#include <stdio.h>
#include <vector>
#include <string>
#include <algorithm>
using namespace std;
bool cmp(string left, string right){//列举出不交换的情况为trueif(left.size()<right.size()) return true;else if(left.size() == right.size()){for(int i = 0;i<left.size();i++){if(left[i]<right[i]) return true;else if(left[i]>right[i]) return false;}}else return false;
}
int main(){int n;scanf("%d", &n);vector<string> vec1;for(int i = 0; i <n;i++){char arr[2000];scanf("%s",arr);string str = arr;vec1.push_back(str);//读入所有整数}sort(vec1.begin(), vec1.end(),cmp);for(int i = 0; i<vec1.size();i++){printf("%s\n", vec1[i].c_str());}
}

字符串函数总结:substr(beginpos, len),insert(beginpos, string),erase(size_t pos = 0, size_t n = npos),erase(iterator first, iterator last),find(const string &s, int pos=0)在 string 字符串中 , 从 pos 索引位置 ( 包括该位置索引自身 ) 开始查找 string 类型字符串 s 在当前字符串的位置 , 如果没有查到就返回 -1 。

相关文章:

机试准备第11天

第一题是浮点数加法&#xff0c;目前写过最长的代码。 #include <stdio.h> #include <string> #include <iostream> #include <vector> using namespace std; int main() {string str1;string str2;while (getline(cin, str1) && getline(cin…...

【Proteus仿真】【STM32单片机】智能阳台控制系统

文章目录 一、功能简介二、软件设计三、实验现象联系作者 一、功能简介 本项目使用Proteus8仿真STM32单片机控制器&#xff0c;使用按键、LCD1604液晶、DHT11温湿度模块、PCF8591 ADC、光线传感器、PM2.5传感器、土壤湿度传感器、继电器、水泵、电灯、28BYJ48步进电机等。 主要…...

Manus AI Agent 技术解读:架构、机制与竞品对比

目录 1. Manus 是什么&#xff1f; 1.1 研发背景 1.2 技术特点 1.3 工具调用能力 1.4 主要应用场景 2. Manus 一夜爆火的原因何在&#xff1f; 2.1 技术突破带来的震撼 2.2 完整交付的产品体验 2.3 生态与开源策略 3. Manus 与其他 AI Agent 的对比分析 3.1 技术架构…...

【时间序列】因果推断:从时序数据中探寻“因”与“果”

在日常生活中&#xff0c;我们经常听到这样的问题&#xff1a;“为什么股票价格会突然下跌&#xff1f;”、“天气变化是否会影响销售额&#xff1f;”这些问题背后&#xff0c;其实都在试图寻找一种因果关系。然而&#xff0c;在时间序列数据中&#xff0c;探寻因果关系并不像…...

IDEA2023 使用枚举类型java: 非法字符: ‘\ufffd‘

一、异常&#xff1a; 二、原因 文件编码问题 IDE或文本编辑器的文件编码设置不正确&#xff0c;可能会导致在保存文件时引入了错误的字符。 三、解决 在IntelliJ IDEA中&#xff0c;你可以通过File -> Settings -> Editor -> File Encodings来设置。...

深度学习模型组件之优化器--基础优化器(GD、SGD、Mini-batch SGD)

深度学习模型组件之优化器–基础优化器&#xff08;GD、SGD、Mini-batch SGD&#xff09; 文章目录 深度学习模型组件之优化器--基础优化器&#xff08;GD、SGD、Mini-batch SGD&#xff09;1. 梯度下降&#xff08;Gradient Descent, GD&#xff09;1.1 基本原理1.2 优点与缺点…...

使用 AIStor、MLflow 和 KServe 将模型部署到 Kubernetes

在之前几篇关于 MLOps 工具的文章中&#xff0c;我展示了有多少流行的 MLOps 工具跟踪与模型训练实验相关的指标。我还展示了他们如何使用 MinIO 来存储作为模型训练管道一部分的非结构化数据。但是&#xff0c;一个好的 MLOps 工具应该做的不仅仅是管理您的实验、数据集和模型…...

宝塔 Linux 计划任务中添加运行项目网站PHP任务-定时任务

一、指定php版运行&#xff0c; cd /www/wwwroot/www.xxx.com/ && /www/server/php/56/bin/php think timedtasks start >> /tmp/timedtasks.log 2>&1 二、不指定php版 cd /www/wwwroot/www.xxx.com/ && php think timedtasks start >> …...

unity学习64,第3个小游戏:一个2D跑酷游戏

目录 学习参考 素材资源导入 1 创建项目 1.1 创建1个2D项目 1.2 导入素材 2 背景图bg 2.0 bg素材 2.1 创建背景 2.2 修改素材&#xff0c;且修改摄像机等 2.2.1 修改导入的原始prefab素材 2.2.2 对应调整摄像机 2.2.3 弄好背景 2.3 背景相关脚本实现 2.3.1 错误…...

rom定制系列------小米note3 原生安卓15 批量线刷 默认开启usb功能选项 插电自启等

小米Note 3搭载骁龙660处理器&#xff0c;1200万像素广角镜头、俗称大号版的小米6&#xff0c;官方最终版为12.0.1稳定版安卓9的固件。客户需要运行在安卓15的rom。根据原生官网的rom修改一些功能选项。以便客户操作需求。 定制资源说明 根据客户需求采用安卓15原生系统为底包…...

基于开源 AI 大模型、AI 智能名片及 S2B2C 商城小程序源码的个人 IP 用户运营策略研究

摘要&#xff1a;本文深入剖析了个人 IP 运营领域中用户运营的核心地位与关键作用&#xff0c;详细阐述了以拉新、留存和促活为主要方式的用户运营策略&#xff0c;旨在实现对用户的有效管理和用户价值的全面提升&#xff0c;进而延长用户生命周期&#xff0c;推动用户向消费者…...

什么是:马尔可夫博弈

什么是:马尔可夫博弈 马尔可夫博弈(Markov Game),也被称为随机博弈(Stochastic Game),是马尔可夫决策过程(MDP)在多智能体环境下的扩展。它描述了多个智能体在一个环境中相互作用的动态过程,每个智能体的决策不仅取决于当前环境状态,还会影响其他智能体的决策以及环…...

【探商宝】大数据企业销售线索平台:销售型公司的战略转型引擎

一、市场现状与销售型公司的核心痛点 在数字经济高速发展的2025年&#xff0c;全球企业获客成本较五年前增长超过300%&#xff0c;而B2B销售线索的平均转化率仍徘徊在15%-20%之间。这一矛盾背后&#xff0c;折射出传统销售模式的三重困境&#xff1a; ​数据孤岛导致决策滞后…...

用Ruby的Faraday库来进行网络请求抓取数据

在 Ruby 中&#xff0c;Faraday 是一个非常强大的 HTTP 客户端库&#xff0c;它可以用于发送 HTTP 请求并处理响应。你可以使用 Faraday 来抓取网页数据&#xff0c;处理 API 请求等任务。下面我将向你展示如何使用 Faraday 库进行网络请求&#xff0c;抓取数据并处理响应。 1.…...

Ubuntu的软件源

百度搜索 ubuntu清华镜像源 根据下面的网页&#xff0c;选择对应Ubuntu操作系统的源&#xff0c;一定要对应&#xff01;&#xff01;&#xff01; https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/上图的系统是16.04 xenial&#xff0c;这时就一定要使用16.04 xenial的源 …...

笔记五:C语言编译链接

Faye&#xff1a;孤独让我们与我们所爱的人相处的每个瞬间都无比珍贵&#xff0c;让我们的回忆价值千金。它还驱使你去寻找那些你在我身边找不到的东西。 ---------《寻找天堂》 目录 一、编译和链接的介绍 1.1 程序的翻译环境和执行环境 1.1.1 翻译环境 1.1.2 运行环境 …...

GitCode 助力 vue3-element-admin:开启中后台管理前端开发新征程

源码仓库&#xff1a; https://gitcode.com/youlai/vue3-element-admin 后端仓库&#xff1a; https://gitcode.com/youlai/youlai-boot 开源助力&#xff0c;开启中后台快速开发之旅 vue3-element-admin 是一款精心打造的免费开源中后台管理前端模板&#xff0c;它紧密贴合…...

SyntaxError: Invalid regular expression flag “x“

&#x1f90d; 前端开发工程师、技术日更博主、已过CET6 &#x1f368; 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 &#x1f560; 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 &#x1f35a; 蓝桥云课签约作者、…...

HiveServer2与Spark ThriftServer详细介绍对比

HiveServer2与Spark ThriftServer详细介绍对比 1、概述 1.1 HiveServer2 是 Apache Hive 提供的基于 Thrift 的服务进程&#xff0c;用于让远程客户端执行 Hive SQL 查询 ([一起了解一下HiveServer2 - zourui4271 - 博客园]。它是早期 HiveServer1 的改进版本&#xff0c;引入…...

ESP32S3N16R8驱动ST7701S屏幕(vscode+PlatfoemIO)

1.开发板配置 本人开发板使用ESP32S3-wroom1-n16r8最小系统板 由于基于vscode与PlatformIO框架开发&#xff0c;无espidf框架&#xff0c;因此无法直接烧录程序&#xff0c;配置开发板参数如下&#xff1a; 在platformio.ini文件中&#xff0c;配置使用esp32-s3-devkitc-1开发…...

【网络】每天掌握一个Linux命令 - iftop

在Linux系统中&#xff0c;iftop是网络管理的得力助手&#xff0c;能实时监控网络流量、连接情况等&#xff0c;帮助排查网络异常。接下来从多方面详细介绍它。 目录 【网络】每天掌握一个Linux命令 - iftop工具概述安装方式核心功能基础用法进阶操作实战案例面试题场景生产场景…...

论文解读:交大港大上海AI Lab开源论文 | 宇树机器人多姿态起立控制强化学习框架(二)

HoST框架核心实现方法详解 - 论文深度解读(第二部分) 《Learning Humanoid Standing-up Control across Diverse Postures》 系列文章: 论文深度解读 + 算法与代码分析(二) 作者机构: 上海AI Lab, 上海交通大学, 香港大学, 浙江大学, 香港中文大学 论文主题: 人形机器人…...

STM32+rt-thread判断是否联网

一、根据NETDEV_FLAG_INTERNET_UP位判断 static bool is_conncected(void) {struct netdev *dev RT_NULL;dev netdev_get_first_by_flags(NETDEV_FLAG_INTERNET_UP);if (dev RT_NULL){printf("wait netdev internet up...");return false;}else{printf("loc…...

UDP(Echoserver)

网络命令 Ping 命令 检测网络是否连通 使用方法: ping -c 次数 网址ping -c 3 www.baidu.comnetstat 命令 netstat 是一个用来查看网络状态的重要工具. 语法&#xff1a;netstat [选项] 功能&#xff1a;查看网络状态 常用选项&#xff1a; n 拒绝显示别名&#…...

MVC 数据库

MVC 数据库 引言 在软件开发领域,Model-View-Controller(MVC)是一种流行的软件架构模式,它将应用程序分为三个核心组件:模型(Model)、视图(View)和控制器(Controller)。这种模式有助于提高代码的可维护性和可扩展性。本文将深入探讨MVC架构与数据库之间的关系,以…...

ESP32 I2S音频总线学习笔记(四): INMP441采集音频并实时播放

简介 前面两期文章我们介绍了I2S的读取和写入&#xff0c;一个是通过INMP441麦克风模块采集音频&#xff0c;一个是通过PCM5102A模块播放音频&#xff0c;那如果我们将两者结合起来&#xff0c;将麦克风采集到的音频通过PCM5102A播放&#xff0c;是不是就可以做一个扩音器了呢…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式

点一下关注吧&#xff01;&#xff01;&#xff01;非常感谢&#xff01;&#xff01;持续更新&#xff01;&#xff01;&#xff01; &#x1f680; AI篇持续更新中&#xff01;&#xff08;长期更新&#xff09; 目前2025年06月05日更新到&#xff1a; AI炼丹日志-28 - Aud…...

从零开始打造 OpenSTLinux 6.6 Yocto 系统(基于STM32CubeMX)(九)

设备树移植 和uboot设备树修改的内容同步到kernel将设备树stm32mp157d-stm32mp157daa1-mx.dts复制到内核源码目录下 源码修改及编译 修改arch/arm/boot/dts/st/Makefile&#xff0c;新增设备树编译 stm32mp157f-ev1-m4-examples.dtb \stm32mp157d-stm32mp157daa1-mx.dtb修改…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

[Java恶补day16] 238.除自身以外数组的乘积

给你一个整数数组 nums&#xff0c;返回 数组 answer &#xff0c;其中 answer[i] 等于 nums 中除 nums[i] 之外其余各元素的乘积 。 题目数据 保证 数组 nums之中任意元素的全部前缀元素和后缀的乘积都在 32 位 整数范围内。 请 不要使用除法&#xff0c;且在 O(n) 时间复杂度…...