PHP マニュアル 日本語版について
ここでは、PHPを使うと必ず一度は目にするであろう PHPマニュアル について記していきます。 PHPマニュアルのメンテナンスの前提となる基本知識や、修正方法などについて記していきます。
この文書の著者
mumumu です。PHPマニュアル のメンテナの一人です。
<?php | |
// | |
// requirement | |
// | |
// - PHP 8 | |
// - nikic/PHP-Parser | |
// | |
require_once('vendor/autoload.php'); |
PHPマニュアルのコミット権限を得たら、DocBook を直接編集し、リポジトリにコミットすることが出来ます。
ここでは、その具体的な方法を示します。
PHPマニュアルのコミット権限を得たい方は、こちらをまず読んで下さい。
まずは PHPマニュアル をビルドする環境を整えなければ始まりません。
PHPのマニュアルは、DocBook と呼ばれるフォーマットで記述されており、PhD という PHPマニュアル のためのツール によってその DocBook から HTML や CHM、PDF などの複数の形式にビルドできる。
この記事では、実際の PHPマニュアル をリポジトリから取ってきてビルドする方法を紹介する。PhD は PDF や manpage形式、epub 等多様な形式がビルドできるが、ここでは HTML および chm のみについて触れる。
まず、PHP をインストールしなければはじまらない。
PHP 5.3 以降であれば、HTML 版も chm も問題なくビルドできるはずだ。
人にメールを転送しつつ、自分のメールボックスに入れる maildropfilter(1) の設定。
下記では駄目
if (....)
{
https://codeforces.com/contest/1334/problem/A
ゲームの2つの stats - number of play
(np) と number of clear
(nc) は、以下の条件を すべて 満たさなければならない
https://codeforces.com/contest/1297/problem/B
区間の重なりを O(C+T) で解く方法として、 いもす法 が知られているが、この問題では T が 10^9 に達するため、いもす法では解くことが出来ない。
この問題で数えるべき「区間の重なりの数が1」の区間は、区間の端っことその前後に属する区間の数を数えることで、O(C^2) で数えることができる。
本番ではいもす法では解けないことを理解していたので、区間を重ねてみて冷静に観察すれば解けた... はずである(´ー`; )
fun oneInRange(arr: ArrayList<Pair<Int, Int>>, pos: Int): Boolean {
import kotlin.math.* | |
fun main() { | |
val firstline = readLine()!!.split(" ") | |
val k = firstline[1].toLong() | |
val arr = readLine()!!.split(" ").map { it.toLong() } | |
var pairlist = mutableListOf<Pair<Long, Int>>() | |
for ((idx, value) in arr.withIndex()) { | |
pairlist.add(Pair(value, idx)) |
コンテスト名そのものにもリンクを貼ってもらえると嬉しいです。
たとえば 「Codeforces Round #555 (Div. 3)」のテキストに、https://codeforces.com/contest/1157 へのリンクを張るという具合です。
バーチャルコンテストへのリンク (*1) もあるとなお嬉しかったりしますが、UI的に微妙になるかもしれない。。
# Insert your preferred key mappings here. | |
unmapAll | |
map j scrollDown | |
map k scrollUp | |
map l scrollRight | |
map h scrollLeft | |
map gg scrollToTop | |
map G scrollToBottom |