当前位置: 首页 > 编程笔记 >

PHP中的回文

沈健
2023-03-14
本文向大家介绍PHP中的回文,包括了PHP中的回文的使用技巧和注意事项,需要的朋友参考一下

理查德·怀斯曼(Richard Wiseman)是一位心理学家,魔术师和作家,在http://richardwiseman.wordpress.com/上经营着一个小博客。他的博客谈论各种各样的事情,但是每个星期五他都会发布一个小难题,您可以尝试解决。

发布的最后一个难题谈到回文数和速度,这是完整的难题。

前几天我去骑自行车。我最喜欢的路线每米都有标志,表明您已经走了多远。我碰到标语上写着“ 15951米”,并以为“哦,这很有趣,这是一个数字回文,因为它从左到右和从右到左读相同。” 然后我骑上。两个小时后,我遇到了下一个回文数字符号。我要走多快?

我通常喜欢坐下来几分钟,仔细研究这些难题,特别是如果这些难题是基于数字的。但是,这周的困惑使我思考了可以解决问题的算法。它所需要的只是开始和结束的计数器,一个简单的回文检测器以及最后的一些数学运算以根据开始和结束值确定速度。

$start = 15951;
$end = 0;
 
for ($i = $start + 1; $i < 20000; ++$i) {
    if ($i == strrev($i)) {
        print "Palindrome = " . $i . "\n";
        $end = $i;
        break;
    }
}
$result = $end - $start;
// 锻炼速度。
print  $result . ' meters, or ' . $result / 1000 . 'km, travelled in 2 hours makes the speed ' . (($result) / 2) / 1000 . ' kph';

打印出以下结果。

Palindrome = 16061
110 meters, or 0.11km, travelled in 2 hours makes the speed 0.055 kph

星期五难题的答案可以从理查德·怀斯曼(Richard Wiseman)从星期一开始的博客文章中看到。这个难题的答案是每小时55米,这与该代码创建的答案很吻合,尽管我以每小时公里数来计算。

最后,如果您查看的是字符串而不是数字,则可能需要通过删除所有标点符号和空格来稍微改进回文检测器。

$string = preg_replace( '/[^\sa-zA-Z0-9]/', '', $string);
if ($string == strrev($string)) {
    echo 'Panindrome detected.';
}

使用该strtolower()函数来确保字符串中没有任何字符可能会导致此回文检查失败,这可能也是值得的。

 类似资料:
  • Vungle没有任何PHP示例代码。我的游戏运行在PHP上,我不想使用客户端回调。 他们有一些说明:我们有一个如何验证您的回调的指南,如下所示:

  • 除了加载外部的脚本, 和你在上⼀章看到的类似, 你的php嵌入式应用, 下面将实现⼀个类似于用户空间eval()的命令. int zend_eval_string(char *str, zval *retval_ptr, char *string_name TSRMLS_DC) 这里, str是实际要执行的php脚本代码, 而string_name是⼀个

  • 本文向大家介绍PHP 返回,包括了PHP 返回的使用技巧和注意事项,需要的朋友参考一下 示例 该return语句将程序控件返回给调用函数。 当return从函数内部调用时,当前函数的执行将结束。 运行时,returnEndsFunctions();您将得到输出This is executed; 在return具有和参数的函数中调用时,当前函数的执行将结束,参数的值将返回给调用函数。

  • 问题内容: 我有一个档案 用户来 我希望用户的浏览器开始下载文件。我怎么做?readfile是否在服务器上打开文件,这似乎是不必要的事情。有没有一种方法可以在不打开服务器的情况下返回文件? 问题答案: 我想你想要这个:

  • 本文向大家介绍如何在PHP中回显XML文件,包括了如何在PHP中回显XML文件的使用技巧和注意事项,需要的朋友参考一下 在PHP包装程序的帮助下,HTTP URL可以像本地文件一样使用。可以通过file_get_contents()来获取URL中的内容,并且可以将其回显。或使用readfile函数读取。 以下是执行相同操作的示例代码- 下面展示了一个替代方案- 也可以使用asXML方法。以下是示例

  • 问题内容: 我正在使用一个模板引擎,该引擎将代码插入我想要的站点中。 我写了一个函数来测试一些很简单的东西: 问题是,$ this-> data是私有的,我无法在任何地方访问它,因此我必须使用getData();。导致我的问题。 不起作用,并且先分配值也不起作用,因为它将直接在if()块中使用。 有任何想法吗? 问题答案: 从PHP 5.4开始,可以完全做到这一点: