算法记录(2010.1.23-1)

【BFS】P9126 [USACO23FEB] Moo Route II S|普及+ 注意:本题的时间限制为 4 秒,是默认限制的两倍。 Bessie 正在度假!由于最近的技术进步,Bessie 可以通过先进的航班旅行,这些航班甚至可以进行时间旅行。此外,即使存在多个“平行”的 Bessie 同时出现也不会有任何问题。 在这个国家,有 $N$ 个机场,编号为 $1,2,\cdots,N$,以及 $M$ 条时间旅行航班($1 \leq N,M \leq 200000$)。第 $j$ 条航班从机场 $c_j$ 在时间 $r_j$ 起飞,并在时间 $s_j$ 抵达机场 $d_j$($0 \le 阅读详情

课题《字符串提取的函数代码!不准用字符处理函数实现! 》

要求:

给定一个字符串如:“ewewewe,.,,rerere-;;ewewewe'rerrere”
如何将字符串提取出来,打印如下:
ewewewe
rerere
ewewewe
rerrere
调用函数  tiqu(char const *p,char *s)

不准用字符处理函数实现!   /*现在想想字符处理函数不准用,字符串处理函数行不,要知道在C++里面字符和字符串可以两个概念哎——嘻嘻*/

备注:

《字符串提取的函数代码!不准用字符处理函数实现! 》 这是我在论坛上看见的一篇请求,当时,感觉不难,直到自己动手写的时候才发现,不难的东西往往有很大的优化空间,应此,先后写了三段不同的代码,论坛上已经贴了前两段(现在发现论坛上原先的前两段编写时忽略了一种情况,即首字符就是标点)……

内容:

代码1:

#include <stdio.h>

void tiqu(char const* p, char* s)
{
	const char* tmp = s;
	while(*p) {
		if ((*p >= 'a' && *p <= 'z') || (*p >= 'A' && *p <= 'Z')) {
			*s++ = *p++;
		}
		else {
			if (tmp == s) {//判断是不是首字符
				continue;
			}
			*s++ = '\n';
			while ((*p <= 'a' || *p >= 'z') && (*p <= 'A' || *p >= 'Z'))
				++p;
		}
	}
	*s = '\0';
}

int main()
{
	char str[255];
	char* istr = "ewewewe,.,,rerere-;;ewewewe'rerrere";
	tiqu(istr, str);
	printf("%s\n", str);
	return 0;
}

代码2:

#include <stdio.h>

//#define ISPT(C) (C <= 'a' || C >= 'z') && (C <= 'A' || C >= 'Z')//可以使用宏简化代码

void tiqu(char const* p, char* s)
{
	const char* tmp = s;
	while(*s = *p) {
		++p;
		if ((*s <= 'a' || *s >= 'z') && (*s <= 'A' || *s >= 'Z')) {
			//使用宏简化代码时用 if (ISPT(*s)) {
			if (tmp == s) {//判断是不是首字符
				continue;
			}
			*s = '\n';
			while ((*p <= 'a' || *p >= 'z') && (*p <= 'A' || *p >= 'Z')) {
			//使用宏简化代码时用 while (ISPT(*p))
				++p;
			}
		}
		++s;
	}
}

int main()
{
	char str[255];
	char* istr = "ewewewe,.,,rerere-;;ewewewe'rerrere";
	tiqu(istr, str);
	printf("%s\n", str);
	return 0;
}

代码3:

#include <stdio.h>

void tiqu(char const* p, char* s)
{
	const char* tmp = s;
	while(*s = *p) {
		++p;
		if ((*s <= 'a' || *s >= 'z') && (*s <= 'A' || *s >= 'Z')) {
			if (tmp != s && *(s - 1) != '\n') {
				*s++ = '\n';
			}
			continue;
		}
		++s;
	}
}

int main()
{
	char str[255];
	char* istr = "ewewewe,.,,rerere-;;ewewewe'rerrere";
	tiqu(istr, str);
	printf("%s\n", str);
	return 0;
}

这三段代码,主要区别在while循环中

后记:

虽然没有真正测试过,不过后者应该会比前者效率高点。但同时感觉还有进一步提高的可能……

Win10系统内存占用异常飙升?三步排查法快速定位问题根源 本文针对Win10系统内存占用异常飙升问题,提供了一套三步排查法。首先利用任务管理器和资源监视器进行深度系统体检,定位隐形内存消耗者;其次通过干净启动和禁用非必要后台服务,揪出导致内存泄漏的第三方软件或驱动;最后进行终极深度清理,包括检查内存完整性、调整虚拟内存设置以及更新关键驱动程序,帮助用户快速恢复系统流畅运行。 阅读详情

相关推荐

Windows平台MuJoCo仿真环境配置与Qt集成实战

本文详细介绍了在Windows平台上配置MuJoCo物理仿真环境并与Qt框架集成的完整实战流程。内容涵盖从环境准备、库文件配置、项目创建到核心代码编写的每一步,重点解决了Windows下常见的编译链接错误和路径问题,帮助开发者在Windows系统中高效搭建机器人仿真与可视化控制开发环境。

weixin_29221753的博客 172

算法1.1.23

为 BinarySearch  的测试用例添加一个参数: +  打印出标准输入中不在白名单上 的值; - ,则打印出标准输入中在白名单上的值。 为BinarySearch的测试用例添加一个参数:+打印出标准输入中不在白名单上的值;-,则打印标准输入中在白名单上的值。 public static int rank(int key, int[] a,char c) {        

linjiajun12123的博客 407

数据结构实验1.2—高精度计算PI值(西工大)

这是数据结构第二题的题目,是让我们根据用户的需求来计算派的值 这是题目的详细描述,刚看到这道题的时候,我是真的头大,完全没有思路,于是查找了一些大佬的笔记后才开始编写 这是我在写这些代码是所运用到的数学反三角函数幂次展开式的知识。 下面是正确的代码以及我的一些见解,和需要注意的一些地方。希望能对你有所帮助。如有更加精简的算法,请在评论区留下你的算法!!!谢谢!!! #define _CRT_SECURE_NO_WARNINGS #include<stdio.h> #include<stdl

abcdef0623的博客 5831

1.23 算法题(1)

不容易系列之(4)——考新郎 Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others) Total Submission(s): 50869 Accepted Submission(s): 18553 Problem Description 国庆期间,省城HZ刚刚举行了一场盛大的集体...

qq_43973193的博客 216

SigmaStudio进阶技巧:如何用ADAU1701实现60段EQ与防啸叫算法

本文深入探讨了如何在ADAU1701 DSP芯片上实现专业级音频处理系统。通过精密的资源规划与架构设计,详细讲解了构建高达60段参数均衡器(EQ)的有效方法,并集成了移频与自适应陷波双策略的智能防啸叫算法。内容涵盖从SigmaStudio工程优化、算法模块组合到系统联调实战的全流程,旨在帮助中高级开发者充分利用ADAU1701性能,打造稳定、高效的音频处理解决方案。

weixin_28256233的博客 384

uniapp实战:5分钟搞定PDA激光扫码功能(附完整代码)

本文详细介绍了在Uniapp应用中快速集成工业PDA激光扫码功能的实战方案。通过解析PDA硬件扫码与手机摄像头扫码的核心机制差异,提供了完整的广播监听封装类代码,并演示了在Vue页面中的集成使用方法,帮助开发者高效解决仓储、零售等行业的条码扫描需求。

weixin_29239661的博客 456

Spark之初学-01

Spark简介 Spark是起源于美国加州大学伯克利分校AMPLab的大数据计算平台,在2010年开源,目前是Apache软件基金会的较高级项目。随着Spark在大数据计算领域展露头角,也获取了越来越多的关注。2014年11月,Spark在Daytoya Gray Sort100TB Benchmark竞赛中打破了由Hadoop MapReduce保持的排序记录,Spark利用1/10的节点数,把...

wzz87的博客 468

【Xilinx】如何在petalinux下编译vcu-gst-app以及独立编译vcu-gst-app

Xilinx从2018.1开始,提供了一套基于zcu106的vcu参考设计。里面提供了一套基于GStreamer的程序,即vcu-gst-app。如何脱离petalinux直接编译呢,这里以为例,其他版本也是类似的操作。

王师傅 3039

2018年10月训练记录(10.1~10.23)

前言

CXR的博客 816

【AI】在RK3576上,使用RKNN实现MeloTTS(文本转语音)

在瑞芯微的RK3576上实现TTS(文本转语音)功能,使用CPU实现时,几乎把CPU资源全部耗尽,没有实用价值。通过将MeloTTS转为onnx,再转为RKNN,来使用RK3576的NPU硬件加速,成功实现TTS。

郭老二 563

【NIPS 2022】时序精选论文07|Non-stationary Transformers: 引入非平稳性信息的平稳化序列预测模型(代码解读附源码)

整体代码框架基本上与传统 Transformer 类似,基本上只有在内嵌的注意力机制模块有区别,因此这里只对关键部分进行讲解,代码整体框架可参考 Transformer。非平稳时序很难预测,尤其对模型泛化性影响很大,试想下推理阶段的数据分布变了,模型很难适应这种变化。,比如很早以前的差分就是一种平稳化操作。序列平稳化能增强数据的可预测性,但这时也会带来一个问题,叫。,通过MLP层进行定义,使得参数可学习,以便于更好的融合到注意力网络中。代码中整体注意力的计算方式与原生Transformer类似,

ViolenceTemper的博客 1492

OpenSSL使用记录

OpenSSL 用于https通信时,在windows上编译的OpenSSL-1.1.1版本的库,以及使用demo,中间遇到一些问题,谨以此记录并与大家交流。

不入流小码农 733

【RV1126/RV1109学习笔记】#基础篇#(2)基础入门使用

一、调试方式 1、串口调试 2、ADB调试 3、网络调试 二、基础外设使用 音频使用(aplay,arecord,amixer) 三、WIFI连接 四、屏幕背光控制

丨晋丨 1856

NOIP2010机器翻译

翻译软件由临时记忆和外存记忆两部分构成。临时记忆有限,至多储存 mmm 个单词;外存记忆无限,可以储存任意多的单词。\hspace{15pt}对于新出现的单词,储存规则如下:∙ \hspace{23pt}\bullet\,∙若其存在于临时记忆中,则直接使用,不进行任何操作;∙ \hspace{23pt}\bullet\,∙若其不存在于临时记忆中,那么记录一次读取,并加入临时记忆;

ykkkyi的博客 876

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

bzoj 1854 //1854: [Scoi2010]游戏

bzoj 1854 //1854: [Scoi2010]游戏 //在线测评地址https://www.lydsy.com/JudgeOnline/problem.php?id=1854 更多题解,详见https://blog.csdn.net/mrcrack/article/details/90228694BZOJ刷题记录 二分图 //1854: [Scoi2010]游戏 //在线测评地...

mrcrack的博客 231

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

c语言2010试题答案,2010年c语言试题及答案

2010年c语言试题及答案 2010年C语言试题及答案 一、选择题 (1)下列叙述中正确的是 A)对长度为n的有序链表进行查找,最坏清况下需要的比较次数为n B)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(n/2) C)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(log2n) D)对长度为n的有序链表进行对分查找,最坏情况下需要的比较次数为(nlog2n) (2...

weixin_39973009的博客 178

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

2010--必须做到的事

今年已经27了,这些东西,竟然还不会,感觉这样不好。 2010年,我必须学会以下东西,aop,微软企业库,nhibernate,mvc1.0,javascript虽然是mvc2.0时代了,但是万变不离其宗,这期间必然会涉及到设计模式,算法,数据结构。 至于silverlight,linq to 很多东西,entity framework,单元测试,很想学,但是顾不上了。如果工作中能用到,当然极...

weixin_30699465的博客 61

Excel 2010 VBA 入门 040 批量删除空行

目录 示例: 实现代码1: 单元格删除Delete方法 单元格删除的通用算法 实现代码2 利用Union获取整个单元格区域进行统一操作 Union方法的注意事项 单元格插入Insert方法 示例: 如图所示,该表为某公司入库流水账,由于工作人员疏忽,在记录中产生了许多空行。现在需要做统计,希望能够将这些空行批量删除,该如何用VBA实现? 日期/时间 产品 数量 2012/10/29 产品1 83 2012/10/30 产品1 184 ..

复行数十步 1902

打卡信奥刷题(1631)用C++实现信奥 P7542 [COCI 2009/2010 #1] MALI

题目要求为每个回合k找到最小的最大数对和(Ai+Bj),其中每个数只能使用一次。每次回合新增一对数字后,需将A和B序列中的数字重新配对,使得最大和最小。样例输入3组数据,输出每回合的最优解。C++实现使用双指针方法,维护A和B的计数数组,通过贪心策略将最小A与最大B配对来最小化最大和。算法复杂度为O(N*100),适用于N≤10^5的数据规模。输出每回合计算后的结果。

Loge谈信奥--一个专注于信奥人的博客 748

刷题记录:牛客NC20279[SCOI2010]序列操作

刷题记录:牛客NC20279[SCOI2010]序列操作

yingjiayu12的博客 495

10.23模拟赛T1

(1<=n<=1000,1<=m<=100000) 这是一道傻逼题,正解是用数组维护次短路的相关信息,但是直接暴力BFS就过了,笑死我了 #include <iostream> #include <cstdio> #include <cstdlib> #include <cstring> #include <cctyp...

sleepyNick 186

BZOJ-1827 [Usaco2010 Mar]gather 奶牛大集会

1827: [Usaco2010 Mar]gather 奶牛大集会 Time Limit: 1 SecMemory Limit: 64 MB Description Bessie正在计划一年一度的奶牛大集会,来自全国各地的奶牛将来参加这一次集会。当然,她会选择最方便的地点来举办这次集会。每个奶牛居住在 N(1<=N<=100,000) 个农场中的一个,这些农场...

dianding2758的博客 152

1826: [JSOI2010]缓存交换

1826: [JSOI2010]缓存交换 https://www.lydsy.com/JudgeOnline/problem.php?id=1826 分析:   简单的贪心,然后调啊调。。。最近怎么了,码力大大下降,各种奇奇怪怪的bug漫天飞,以后少熬夜。   贪心:每次pop一定是pop最远点的点。 代码: 1 #include<bits/stdc++.h> ...

weixin_30549657的博客 81

【bzoj2002】[Hnoi2010]Bounce 弹飞绵羊 link-cut-tree

【bzoj2002】[Hnoi2010]Bounce 弹飞绵羊 link-cut-tree 2016-05-3011:51:59 用一个next数组,记录点x的下一个点是哪个 查询时,moveroot(n+1),access(x),splay(x) ,输出si...

anchoupi8353的博客 156

bzoj2208: [Jsoi2010]连通数(dfs)

2208: [Jsoi2010]连通数 题目:传送门 题解:    强烈吐槽(表示自己想复杂了)    看到这个破题就直接想强联通,错了很久看一波路牌,发现没错,但是要bitset(蒟蒻不会啊)    水了个dfs准备等下对拍....tmdA了!!!    不想多说... 代码: 1 #include<cstdio> 2 #include<cstrin...

weixin_30871293的博客 107

组合数学起步-排列计数[ZJOI2010][BZOJ2111]

<题面> 数据范围:$1 \leq N \leq 10^6, P \leq 10^9 $ 这个题…… 以为是排列,其实是组合 题目中说是从所有排列中找到Magic的,就是 $p_{i/2} \leq p_i$ 满足的情况 我拿着排列想了半天,发现 这个题和排列一点关系也没有 而且我打了几个表,看了下可行结果,也不能逆向求 后来是一个提示:用堆,dp 堆啊…...

152
上一篇: Code::Blocks(MinGW)编译资源文件时中文乱码的解决方案及补充
下一篇: 实现日期到农历五行八字转换
耍宝王
博客等级 码龄17年 107粉丝 15原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值