机试准备第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天
第一题是浮点数加法,目前写过最长的代码。 #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单片机控制器,使用按键、LCD1604液晶、DHT11温湿度模块、PCF8591 ADC、光线传感器、PM2.5传感器、土壤湿度传感器、继电器、水泵、电灯、28BYJ48步进电机等。 主要…...
Manus AI Agent 技术解读:架构、机制与竞品对比
目录 1. Manus 是什么? 1.1 研发背景 1.2 技术特点 1.3 工具调用能力 1.4 主要应用场景 2. Manus 一夜爆火的原因何在? 2.1 技术突破带来的震撼 2.2 完整交付的产品体验 2.3 生态与开源策略 3. Manus 与其他 AI Agent 的对比分析 3.1 技术架构…...
【时间序列】因果推断:从时序数据中探寻“因”与“果”
在日常生活中,我们经常听到这样的问题:“为什么股票价格会突然下跌?”、“天气变化是否会影响销售额?”这些问题背后,其实都在试图寻找一种因果关系。然而,在时间序列数据中,探寻因果关系并不像…...
IDEA2023 使用枚举类型java: 非法字符: ‘\ufffd‘
一、异常: 二、原因 文件编码问题 IDE或文本编辑器的文件编码设置不正确,可能会导致在保存文件时引入了错误的字符。 三、解决 在IntelliJ IDEA中,你可以通过File -> Settings -> Editor -> File Encodings来设置。...
深度学习模型组件之优化器--基础优化器(GD、SGD、Mini-batch SGD)
深度学习模型组件之优化器–基础优化器(GD、SGD、Mini-batch SGD) 文章目录 深度学习模型组件之优化器--基础优化器(GD、SGD、Mini-batch SGD)1. 梯度下降(Gradient Descent, GD)1.1 基本原理1.2 优点与缺点…...
使用 AIStor、MLflow 和 KServe 将模型部署到 Kubernetes
在之前几篇关于 MLOps 工具的文章中,我展示了有多少流行的 MLOps 工具跟踪与模型训练实验相关的指标。我还展示了他们如何使用 MinIO 来存储作为模型训练管道一部分的非结构化数据。但是,一个好的 MLOps 工具应该做的不仅仅是管理您的实验、数据集和模型…...
宝塔 Linux 计划任务中添加运行项目网站PHP任务-定时任务
一、指定php版运行, 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 修改素材,且修改摄像机等 2.2.1 修改导入的原始prefab素材 2.2.2 对应调整摄像机 2.2.3 弄好背景 2.3 背景相关脚本实现 2.3.1 错误…...
rom定制系列------小米note3 原生安卓15 批量线刷 默认开启usb功能选项 插电自启等
小米Note 3搭载骁龙660处理器,1200万像素广角镜头、俗称大号版的小米6,官方最终版为12.0.1稳定版安卓9的固件。客户需要运行在安卓15的rom。根据原生官网的rom修改一些功能选项。以便客户操作需求。 定制资源说明 根据客户需求采用安卓15原生系统为底包…...
基于开源 AI 大模型、AI 智能名片及 S2B2C 商城小程序源码的个人 IP 用户运营策略研究
摘要:本文深入剖析了个人 IP 运营领域中用户运营的核心地位与关键作用,详细阐述了以拉新、留存和促活为主要方式的用户运营策略,旨在实现对用户的有效管理和用户价值的全面提升,进而延长用户生命周期,推动用户向消费者…...
什么是:马尔可夫博弈
什么是:马尔可夫博弈 马尔可夫博弈(Markov Game),也被称为随机博弈(Stochastic Game),是马尔可夫决策过程(MDP)在多智能体环境下的扩展。它描述了多个智能体在一个环境中相互作用的动态过程,每个智能体的决策不仅取决于当前环境状态,还会影响其他智能体的决策以及环…...
【探商宝】大数据企业销售线索平台:销售型公司的战略转型引擎
一、市场现状与销售型公司的核心痛点 在数字经济高速发展的2025年,全球企业获客成本较五年前增长超过300%,而B2B销售线索的平均转化率仍徘徊在15%-20%之间。这一矛盾背后,折射出传统销售模式的三重困境: 数据孤岛导致决策滞后…...
用Ruby的Faraday库来进行网络请求抓取数据
在 Ruby 中,Faraday 是一个非常强大的 HTTP 客户端库,它可以用于发送 HTTP 请求并处理响应。你可以使用 Faraday 来抓取网页数据,处理 API 请求等任务。下面我将向你展示如何使用 Faraday 库进行网络请求,抓取数据并处理响应。 1.…...
Ubuntu的软件源
百度搜索 ubuntu清华镜像源 根据下面的网页,选择对应Ubuntu操作系统的源,一定要对应!!! https://mirror.tuna.tsinghua.edu.cn/help/ubuntu/上图的系统是16.04 xenial,这时就一定要使用16.04 xenial的源 …...
笔记五:C语言编译链接
Faye:孤独让我们与我们所爱的人相处的每个瞬间都无比珍贵,让我们的回忆价值千金。它还驱使你去寻找那些你在我身边找不到的东西。 ---------《寻找天堂》 目录 一、编译和链接的介绍 1.1 程序的翻译环境和执行环境 1.1.1 翻译环境 1.1.2 运行环境 …...
GitCode 助力 vue3-element-admin:开启中后台管理前端开发新征程
源码仓库: https://gitcode.com/youlai/vue3-element-admin 后端仓库: https://gitcode.com/youlai/youlai-boot 开源助力,开启中后台快速开发之旅 vue3-element-admin 是一款精心打造的免费开源中后台管理前端模板,它紧密贴合…...
SyntaxError: Invalid regular expression flag “x“
🤍 前端开发工程师、技术日更博主、已过CET6 🍨 阿珊和她的猫_CSDN博客专家、23年度博客之星前端领域TOP1 🕠 牛客高级专题作者、打造专栏《前端面试必备》 、《2024面试高频手撕题》、《前端求职突破计划》 🍚 蓝桥云课签约作者、…...
HiveServer2与Spark ThriftServer详细介绍对比
HiveServer2与Spark ThriftServer详细介绍对比 1、概述 1.1 HiveServer2 是 Apache Hive 提供的基于 Thrift 的服务进程,用于让远程客户端执行 Hive SQL 查询 ([一起了解一下HiveServer2 - zourui4271 - 博客园]。它是早期 HiveServer1 的改进版本,引入…...
ESP32S3N16R8驱动ST7701S屏幕(vscode+PlatfoemIO)
1.开发板配置 本人开发板使用ESP32S3-wroom1-n16r8最小系统板 由于基于vscode与PlatformIO框架开发,无espidf框架,因此无法直接烧录程序,配置开发板参数如下: 在platformio.ini文件中,配置使用esp32-s3-devkitc-1开发…...
嵌入式哈希表实现:无malloc线性探测Hash Map
1. 项目概述 hashmap.c 是一个面向嵌入式系统深度优化的纯 C 语言哈希映射(Hash Map)实现,不依赖标准库(如 stdlib.h 、 string.h ),完全可移植于裸机环境、RTOS(FreeRTOS、Zephyr、RT-Thr…...
【RISC-V 指令集】RISC-V 向量V扩展指令集介绍(五)- 动态配置与性能优化实战(vsetvli/vsetivli/vsetvl)
1. 动态向量配置指令的核心作用 RISC-V向量扩展指令集中最精妙的设计之一,就是允许程序运行时动态调整向量处理参数的机制。想象你正在用不同尺寸的螺丝刀组装家具——当遇到大螺丝就换大号刀头,碰到小螺丝立即切换精密刀头,这就是vsetvli/vs…...
别再死记硬背了!用Kahn算法搞定LeetCode 207课程表,保姆级C++代码逐行解析
从课程表到任务调度:Kahn算法在LeetCode 207中的实战应用 每次打开LeetCode看到那道课程表问题,你是不是也感到一阵头疼?先修课程、依赖关系、环状检测……这些概念堆在一起,简直比大学选课系统还让人崩溃。但别担心,今…...
2026年03月26日全球AI前沿动态
一句话总结全球AI领域密集发布技术、产品、企业动态,覆盖通用/垂直大模型、专项技术、智能体、机器人、硬件基建等全赛道,中国AI在视频、音乐、办公智能体领域领跑,OpenAI关停Sora战略转型,Arm、苹果、腾讯等大厂新品落地…...
如何高效使用抖音批量下载工具:3个技巧让视频收集效率提升90%
如何高效使用抖音批量下载工具:3个技巧让视频收集效率提升90% 【免费下载链接】douyin-downloader 项目地址: https://gitcode.com/GitHub_Trending/do/douyin-downloader 在短视频内容爆炸的时代,抖音作为国内领先的内容平台,每天产…...
Zotero插件Ethereal Style:打造高效文献管理新体验
Zotero插件Ethereal Style:打造高效文献管理新体验 【免费下载链接】zotero-style zotero-style - 一个 Zotero 插件,提供了一系列功能来增强 Zotero 的用户体验,如阅读进度可视化和标签管理,适合研究人员和学者。 项目地址: ht…...
Mermaid在线编辑器:开源可视化工具的图表创作革命
Mermaid在线编辑器:开源可视化工具的图表创作革命 【免费下载链接】mermaid-live-editor Edit, preview and share mermaid charts/diagrams. New implementation of the live editor. 项目地址: https://gitcode.com/GitHub_Trending/me/mermaid-live-editor …...
OpenClaw云端体验方案:Qwen3.5-9B镜像免安装调试技巧
OpenClaw云端体验方案:Qwen3.5-9B镜像免安装调试技巧 1. 为什么选择云端沙盒方案? 上周我尝试在本地笔记本部署OpenClaw时,遭遇了Python版本冲突、CUDA驱动不兼容等一系列问题。作为一个经常需要快速验证技术方案的开发者,这种环…...
手把手教你用R玩转MSigDB:从数据库下载、基因集构建到GSEA/GSVA完整流程
手把手教你用R玩转MSigDB:从数据库下载、基因集构建到GSEA/GSVA完整流程 如果你正在寻找一个权威的基因集数据库来支持你的转录组功能分析,MSigDB(Molecular Signatures Database)无疑是首选。作为Broad研究所维护的核心资源&…...
KMS_VL_ALL_AIO激活工具完全指南:从问题诊断到长效管理
KMS_VL_ALL_AIO激活工具完全指南:从问题诊断到长效管理 【免费下载链接】KMS_VL_ALL_AIO Smart Activation Script 项目地址: https://gitcode.com/gh_mirrors/km/KMS_VL_ALL_AIO 如何诊断Windows/Office激活失败的核心原因? 1.1 激活失败的三大…...
