<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[tomlucifer的博客]]></title><description><![CDATA[]]></description><link>https://blog.youkuaiyun.com/tomlucifer</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; tomlucifer]]></copyright><item><title><![CDATA[PAT 1009 说反话 （C++）vector实现]]></title><link>https://blog.youkuaiyun.com/tomlucifer/article/details/145225046</link><guid>https://blog.youkuaiyun.com/tomlucifer/article/details/145225046</guid><author>tomlucifer</author><pubDate>Sat, 18 Jan 2025 12:21:45 +0800</pubDate><description><![CDATA[字符串由若干单词和若干空格组成，其中单词是由英文字母（大小写有区分）组成的字符串，单词之间用 1 个空格分开，输入保证句子末尾没有多余的空格。由于字符串长度为 str.size() , 因此最多会用vector存放 str.size() 个单词（包括空格）。遇到空格，则将指针后移，并单独存放空格。然后将指针移至空格后，准备存入下一单词。给定一句英语，要求你编写程序，将句中所有单词的顺序颠倒输出。：将右侧字符（或者字符串）添加到左侧字符串的末尾。每个测试用例的输出占一行，输出倒序后的句子。]]></description><category></category></item><item><title><![CDATA[PAT 1008 数组元素循环右移问题]]></title><link>https://blog.youkuaiyun.com/tomlucifer/article/details/145182017</link><guid>https://blog.youkuaiyun.com/tomlucifer/article/details/145182017</guid><author>tomlucifer</author><pubDate>Thu, 16 Jan 2025 14:24:11 +0800</pubDate><description><![CDATA[一个数组A中存有N（>0）个整数，在不允许使用另外数组的前提下，将每个整数循环向右移M（≥0）个位置，即将A中的数据由（A0​A1​⋯AN−1​）变换为（AN−M​⋯AN−1​A0​A1​⋯AN−M−1​）（最后M个数循环移至最前面的M个位置）。如果需要考虑程序移动数据的次数尽量少，要如何设计移动的方法？]]></description><category></category></item><item><title><![CDATA[简洁实现 PAT 1005 继续（3n+1）猜想]]></title><link>https://blog.youkuaiyun.com/tomlucifer/article/details/145138518</link><guid>https://blog.youkuaiyun.com/tomlucifer/article/details/145138518</guid><author>tomlucifer</author><pubDate>Tue, 14 Jan 2025 14:55:55 +0800</pubDate><description><![CDATA[卡拉兹(Callatz)猜想已经在1001中给出了描述。在这个题目里，情况稍微有些复杂。当我们验证卡拉兹猜想的时候，为了避免重复计算，可以记录下递推过程中遇到的每一个数。例如对 n=3 进行验证的时候，我们需要计算 3、5、8、4、2、1，则当我们对 n=5、8、4、2 进行验证的时候，就可以直接判定卡拉兹猜想的真伪，而不需要重复计算，因为这 4 个数已经在验证3的时候遇到过了，我们称 5、8、4、2 是被 3“覆盖”的数。]]></description><category></category></item></channel></rss>