当前位置: 首页 > 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开发…...

轻量级服务器监控面板:从原理到部署实战

1. 项目概述&#xff1a;一个开源监控面板的诞生最近在折腾服务器和容器化应用&#xff0c;发现一个挺普遍的需求&#xff1a;当你手头有几台服务器&#xff0c;上面跑着几个Docker容器&#xff0c;或者一些自己写的服务&#xff0c;你总想知道它们现在“活”得怎么样。CPU是不…...

基于Docker构建标准化开发环境:原理、实践与VSCode集成指南

1. 项目概述&#xff1a;一个面向开发者的“开箱即用”环境在软件开发这条路上&#xff0c;我踩过最多的坑&#xff0c;往往不是来自复杂的业务逻辑&#xff0c;而是来自那句“在我机器上好好的”。环境配置&#xff0c;这个看似基础却又无比磨人的环节&#xff0c;消耗了无数开…...

【Midjourney图像生成黑科技】:树胶重铬酸盐工艺原理、复刻难点与AI艺术胶片质感还原全流程指南

更多请点击&#xff1a; https://intelliparadigm.com 第一章&#xff1a;树胶重铬酸盐工艺的历史溯源与数字时代复兴意义 树胶重铬酸盐工艺&#xff08;Gum Bichromate Process&#xff09;诞生于19世纪中叶&#xff0c;是人类最早实现光敏图像复制的化学摄影术之一。其核心原…...

ViewTurbo:基于响应式依赖追踪的前端渲染优化方案

1. 项目概述与核心价值最近在折腾一个挺有意思的开源项目&#xff0c;叫 ViewTurbo。这名字听起来就带点“涡轮增压”的劲儿&#xff0c;事实上&#xff0c;它也确实是一个旨在为视图渲染“加速”的工具。简单来说&#xff0c;ViewTurbo 的核心目标&#xff0c;是解决在复杂前端…...

React轻量级代码编辑器组件:基于Textarea的语法高亮方案

1. 项目概述&#xff1a;一个为React开发者量身打造的代码编辑器组件 如果你在React项目中需要嵌入一个代码编辑器&#xff0c;并且希望它轻量、美观、开箱即用&#xff0c;那么 uiwjs/react-textarea-code-editor 这个组件库很可能就是你一直在寻找的解决方案。它不是一个像…...

AI编码工具选型指南:从原理到实践的全方位解析

1. 项目概述&#xff1a;为什么我们需要一份AI编码工具的“藏宝图”如果你是一名开发者&#xff0c;过去一年里&#xff0c;你的工作流可能已经被AI工具彻底重塑了。从最初用ChatGPT写几行注释&#xff0c;到后来用GitHub Copilot自动补全整段代码&#xff0c;再到如今各种能直…...

HTTP客户端设计哲学:从axios到hoomanity的易用性演进

1. 项目概述&#xff1a;一个为人类设计的HTTP客户端在构建现代应用程序时&#xff0c;与外部API或服务进行HTTP通信几乎是每个开发者都会遇到的日常任务。无论是调用一个天气接口、上传文件到云存储&#xff0c;还是与自家的微服务进行数据交换&#xff0c;我们都需要一个可靠…...

AI智能体分类学:从原理到实践,构建高效Agent系统的设计指南

1. 项目概述与核心价值最近在折腾AI智能体&#xff08;Agent&#xff09;相关的项目&#xff0c;发现一个挺有意思的现象&#xff1a;大家聊起Agent&#xff0c;要么是“它能帮我写代码”&#xff0c;要么是“它能自动处理客服”&#xff0c;但很少有人能系统地说清楚&#xff…...

dotAI:将AI能力环境化,打造可配置的智能开发工作流

1. 项目概述&#xff1a;当AI成为你的“数字管家”最近在GitHub上看到一个挺有意思的项目&#xff0c;叫udecode/dotai。乍一看这个标题&#xff0c;你可能和我最初的反应一样&#xff0c;有点摸不着头脑。dotai&#xff1f;是“点AI”的意思吗&#xff1f;它和.env文件那种“点…...

Figma设计稿自动化生成Markdown文档:从API调用到CI/CD集成

1. 项目概述&#xff1a;从设计稿到结构化文档的自动化桥梁如果你是一名前端开发者、产品经理或是UI设计师&#xff0c;一定经历过这样的场景&#xff1a;Figma里精心打磨的设计稿终于定稿&#xff0c;接下来需要将其转化为开发文档、产品需求文档或者设计规范文档。这个过程&a…...