机试准备第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开发…...
轻量级服务器监控面板:从原理到部署实战
1. 项目概述:一个开源监控面板的诞生最近在折腾服务器和容器化应用,发现一个挺普遍的需求:当你手头有几台服务器,上面跑着几个Docker容器,或者一些自己写的服务,你总想知道它们现在“活”得怎么样。CPU是不…...
基于Docker构建标准化开发环境:原理、实践与VSCode集成指南
1. 项目概述:一个面向开发者的“开箱即用”环境在软件开发这条路上,我踩过最多的坑,往往不是来自复杂的业务逻辑,而是来自那句“在我机器上好好的”。环境配置,这个看似基础却又无比磨人的环节,消耗了无数开…...
【Midjourney图像生成黑科技】:树胶重铬酸盐工艺原理、复刻难点与AI艺术胶片质感还原全流程指南
更多请点击: https://intelliparadigm.com 第一章:树胶重铬酸盐工艺的历史溯源与数字时代复兴意义 树胶重铬酸盐工艺(Gum Bichromate Process)诞生于19世纪中叶,是人类最早实现光敏图像复制的化学摄影术之一。其核心原…...
ViewTurbo:基于响应式依赖追踪的前端渲染优化方案
1. 项目概述与核心价值最近在折腾一个挺有意思的开源项目,叫 ViewTurbo。这名字听起来就带点“涡轮增压”的劲儿,事实上,它也确实是一个旨在为视图渲染“加速”的工具。简单来说,ViewTurbo 的核心目标,是解决在复杂前端…...
React轻量级代码编辑器组件:基于Textarea的语法高亮方案
1. 项目概述:一个为React开发者量身打造的代码编辑器组件 如果你在React项目中需要嵌入一个代码编辑器,并且希望它轻量、美观、开箱即用,那么 uiwjs/react-textarea-code-editor 这个组件库很可能就是你一直在寻找的解决方案。它不是一个像…...
AI编码工具选型指南:从原理到实践的全方位解析
1. 项目概述:为什么我们需要一份AI编码工具的“藏宝图”如果你是一名开发者,过去一年里,你的工作流可能已经被AI工具彻底重塑了。从最初用ChatGPT写几行注释,到后来用GitHub Copilot自动补全整段代码,再到如今各种能直…...
HTTP客户端设计哲学:从axios到hoomanity的易用性演进
1. 项目概述:一个为人类设计的HTTP客户端在构建现代应用程序时,与外部API或服务进行HTTP通信几乎是每个开发者都会遇到的日常任务。无论是调用一个天气接口、上传文件到云存储,还是与自家的微服务进行数据交换,我们都需要一个可靠…...
AI智能体分类学:从原理到实践,构建高效Agent系统的设计指南
1. 项目概述与核心价值最近在折腾AI智能体(Agent)相关的项目,发现一个挺有意思的现象:大家聊起Agent,要么是“它能帮我写代码”,要么是“它能自动处理客服”,但很少有人能系统地说清楚ÿ…...
dotAI:将AI能力环境化,打造可配置的智能开发工作流
1. 项目概述:当AI成为你的“数字管家”最近在GitHub上看到一个挺有意思的项目,叫udecode/dotai。乍一看这个标题,你可能和我最初的反应一样,有点摸不着头脑。dotai?是“点AI”的意思吗?它和.env文件那种“点…...
Figma设计稿自动化生成Markdown文档:从API调用到CI/CD集成
1. 项目概述:从设计稿到结构化文档的自动化桥梁如果你是一名前端开发者、产品经理或是UI设计师,一定经历过这样的场景:Figma里精心打磨的设计稿终于定稿,接下来需要将其转化为开发文档、产品需求文档或者设计规范文档。这个过程&a…...
