Linux命令:使用dig命令解析域名

Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息。

dig的全称是 (domain information groper)。它是一个用来灵活探测DNS的工具。它会打印出DNS name server的回应。

一、dig命令用法

dig [@server] [-b address] [-c class] [-f filename] [-k filename] [ -n ][-p port#] [-t type] [-x addr] [-y name:key] [name] [type] [class] [queryopt...]

dig [-h]

dig [global-queryopt...] [query...]

dig(域信息搜索器)命令是一个用于询问 DNS 域名服务器的灵活的工具。它执行 DNS 搜索,显示从受请求的域名服务器返回的答复。多数 DNS 管理员利用 dig 作为 DNS 问题的故障诊断,因为它灵活性好、易用、输出清晰。

虽然通常情况下 dig 使用命令行参数,但它也可以按批处理模式从文件读取搜索请求。不同于早期版本,dig 的 BIND9 实现允许从命令行发出多个查询。除非被告知请求特定域名服务器,dig 将尝试 /etc/resolv.conf 中列举的所有服务器。当未指定任何命令行参数或选项时,dig 将对“.”(根)执行 NS 查询。

二、dig命令选项

-b address 设置所要询问地址的源 IP 地址。这必须是主机网络接口上的某一合法的地址。
-c class 缺省查询类(IN for internet)由选项 -c 重设。class 可以是任何合法类,比如查询 Hesiod 记录的 HS 类或查询 CHAOSNET 记录的 CH 类。
-f filename 使 dig 在批处理模式下运行,通过从文件 filename 读取一系列搜索请求加以处理。文件包含许多查询;每行一个。文件中的每一项都应该以和使用命令行接口对 dig 的查询相同的方法来组织。
-h 当使用选项 -h 时,显示一个简短的命令行参数和选项摘要。
-k filename 要签署由 dig 发送的 DNS 查询以及对它们使用事务签名(TSIG)的响应,用 选项 -k 指定 TSIG 密钥文件。
-n 缺省情况下,使用 IP6.ARPA 域和 RFC2874 定义的二进制标号搜索 IPv6 地址。为了使用更早的、 使用 IP6.INT 域和 nibble 标签的 RFC1886 方法,指定 选项 -n(nibble)。
-p port# 如果需要查询一个非标准的端口号,则使用选项 -p。port# 是 dig 将发送其查询的端口号,而不是标准的 DNS 端口号 53。该选项可用于测试已在非标准端口号上配置成侦听查询的域名服务器。
-t type 设置查询类型为 type。可以是 BIND9 支持的任意有效查询类型。缺省查询类型是 A,除非提供 -x 选项来指示一个逆向查询。通过指定 AXFR 的 type 可以请求一个区域传输。当需要增量区域传输(IXFR)时,type 设置为 ixfr=N。增量区域传输将包含自从区域的 SOA 记录中的序列号改为 N 之后对区域所做的更改。
-x addr 逆向查询(将地址映射到名称)可以通过 -x 选项加以简化。addr 是一个 以小数点为界的 IPv4 地址或冒号为界的 IPv6 地址。当使用这个选项时,无需提供 name、class 和 type 参数。dig 自动运行类似11.12.13.10.in-addr.arpa 的域名查询,并分别设置查询类型和类为 PTR 和 IN。
-y name:key 您可以通过命令行上的 -y 选项指定 TSIG 密钥;name 是 TSIG 密码的名称,key 是实际的密码。密码是 64 位加密字符串,通常由 dnssec-keygen(8)生成。当在多用户系统上使用选项 -y 时应该谨慎,因为密码在 ps(1)的输出或 shell 的历史文件中可能是可见的。当同时使用 dig 和 TSCG 认证时,被查询的名称服务器需要知道密码和解码规则。在 BIND 中,通过提供正确的密码和 named.conf 中的服务器声明实现。

三、查询选项

dig 提供查询选项号,它影响搜索方式和结果显示。一些在查询请求报头设置或复位标志位,一部分决定显示哪些回复信息,其它的确定超时和重试战略。每个查询选项 被带前缀(+)的关键字标识。一些关键字设置或复位一个选项。通常前缀是求反关键字含义的字符串 no。其他关键字分配各选项的值,比如超时时间间隔。它们的格式形如 +keyword=value。查询选项是:

+[no]tcp

查询域名服务器时使用 [不使用] TCP。缺省行为是使用 UDP,除非是 AXFR 或 IXFR 请求,才使用 TCP 连接。

+[no]vc

查询名称服务器时使用 [不使用] TCP。+[no]tcp 的备用语法提供了向下兼容。 vc 代表虚电路。

+[no]ignore

忽略 UDP 响应的中断,而不是用 TCP 重试。缺省情况运行 TCP 重试。

+domain=somename

设定包含单个域 somename 的搜索列表,好像被 /etc/resolv.conf 中的域伪指令指定,并且启用搜索列表处理,好像给定了 +search 选项。

+[no]search

使用 [不使用] 搜索列表 或 resolv.conf 中的域伪指令(如果有的话)定义的搜索列表。缺省情况不使用搜索列表。

+[no]defname

不建议看作 +[no]search 的同义词。

+[no]aaonly

该选项不做任何事。它用来提供对设置成未实现解析器标志的 dig 的旧版本的兼容性。

+[no]adflag

在查询中设置 [不设置] AD(真实数据)位。目前 AD 位只在响应中有标准含义,而查询中没有,但是出于完整性考虑在查询中这种性能可以设置。

+[no]cdflag

在查询中设置 [不设置] CD(检查禁用)位。它请求服务器不运行响应信息的 DNSSEC 合法性。

+[no]recursive

切换查询中的 RD(要求递归)位设置。在缺省情况下设置该位,也就是说 dig 正常情形下发送递归查询。当使用 查询选项 +nssearch 或 +trace 时,递归自动禁用。

+[no]nssearch

这个选项被设置时,dig 试图寻找包含待搜名称的网段的权威域名服务器,并显示网段中每台域名服务器的 SOA 记录。

+[no]trace

切换为待查询名称从根名称服务器开始的代理路径跟踪。缺省情况不使用跟踪。一旦启用跟踪,dig 使用迭代查询解析待查询名称。它将按照从根服务器的参照,显示来自每台使用解析查询的服务器的应答。

+[no]cmd

设定在输出中显示指出 dig 版本及其所用的查询选项的初始注释。缺省情况下显示注释。

+[no]short

提供简要答复。缺省值是以冗长格式显示答复信息。

+[no]identify

当启用 +short 选项时,显示 [或不显示] 提供应答的 IP 地址和端口号。如果请求简短格式应答,缺省情况不显示提供应答的服务器的源地址和端口号。

+[no]comments

切换输出中的注释行显示。缺省值是显示注释。

+[no]stats

该查询选项设定显示统计信息:查询进行时,应答的大小等等。缺省显示查询统计信息。

+[no]qr

显示 [不显示] 发送的查询请求。缺省不显示。

+[no]question

当返回应答时,显示 [不显示] 查询请求的问题部分。缺省作为注释显示问题部分。

+[no]answer

显示 [不显示] 应答的回答部分。缺省显示。

+[no]authority

显示 [不显示] 应答的权限部分。缺省显示。

+[no]additional

显示 [不显示] 应答的附加部分。缺省显示。

+[no]all

设置或清除所有显示标志。

+time=T

为查询设置超时时间为 T 秒。缺省是5秒。如果将 T 设置为小于1的数,则以1秒作为查询超时时间。

+tries=A

设置向服务器发送 UDP 查询请求的重试次数为 A,代替缺省的 3 次。如果把 A 小于或等于 0,则采用 1 为重试次数。

+ndots=D

出于完全考虑,设置必须出现在名称 D 的点数。缺省值是使用在 /etc/resolv.conf 中的 ndots 语句定义的,或者是 1,如果没有 ndots 语句的话。带更少点数的名称 被解释为相对名称,并通过搜索列表中的域或文件 /etc/resolv.conf 中的域伪指令进行搜索。

+bufsize=B

设置使用 EDNS0 的 UDP 消息缓冲区大小为 B 字节。缓冲区的最大值和最小值分别为 65535 和 0。超出这个范围的值自动舍入到最近的有效值。

+[no]multiline

以详细的多行格式显示类似 SOA 的记录,并附带可读注释。缺省值是每单个行上显示一条记录,以便于计算机解析 dig 的输出。

四、多条查询

dig 的 BIND9 支持在命令行上指定多个查询(支持 -f 批处理文件选项的附加功能)。每条查询可以使用自己的标志位、选项和查询选项。

在这种情况下,在上面描述的命令行语法中,每条查询自变量代表一个个别查询。每一条由任意标准选项和标志、待查询名称、可选查询类型和类以及任何适用于该查询的查询选项。

也可以使用对所有查询均有效的查询选项全局集合。全局查询选项必须位于命令行上第一个名称、类、类型、选项、标志和查询选项的元组之前。任何全局查询选项(除了 +[no]cmd 选项)可以被下面的查询特别选项重设。例如:

[root@RHEL6 ~]#dig +qr www.lampbo.org any -x 127.0.0.1 isc.org ns +noqr

显示 dig 如何从命令行出发进行三个查询:一个针对 www.lampbo.org的任意查询、一个 127.0.0.1 的逆向查询,以及一个 lampbo.org 的 NS 记录查询。应用了 +qr 的全局查询选项,以便 dig 显示进行每条查询的初始查询。最后那个查询有一个本地查询选项 +noqr,表示 dig 在搜索 lampbo.org 的 NS 记录时不显示初始查询。

五、dig典型用法

dig 调用类似:

[root@RHEL6 ~]#dig @server name type

其中:

server   待查询名称服务器的名称或 IP 地址。可以是用点分隔的 IPv4 地址或用冒号分隔的 IPv6 地址。当由主机提供服务器参数时,dig 在查询域名服务器前先解析那个名称。如果没有服务器参数可以提供,dig 参考 /etc/resolv.conf,然后查询列举在那里的域名服务器。显示来自域名服务器的应答。

name   将要查询的资源记录的名称。

type    显示所需的查询类型 - ANY、A、MX、SIG,以及任何有效查询类型等。如果不提供任何类型参数,dig 将对纪录 A 执行查询。

6、示例

(1)、显示13个根域服务器

internet上有13个根域服务器,使用不加参数的dig命令显示这些服务器信息

[root@RHEL6 ~]#dig

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>>
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 63379
;; flags: qr rd ra; QUERY: 1, ANSWER: 13, AUTHORITY: 0, ADDITIONAL: 13 ;; QUESTION SECTION:
;.                              IN      NS ;; ANSWER SECTION:
.                       126666  IN      NS      m.root-servers.net.
.                       126666  IN      NS      f.root-servers.net.
.                       126666  IN      NS      b.root-servers.net.
.                       126666  IN      NS      j.root-servers.net.
.                       126666  IN      NS      c.root-servers.net.
.                       126666  IN      NS      k.root-servers.net.
.                       126666  IN      NS      e.root-servers.net.
.                       126666  IN      NS      g.root-servers.net.
.                       126666  IN      NS      i.root-servers.net.
.                       126666  IN      NS      h.root-servers.net.
.                       126666  IN      NS      l.root-servers.net.
.                       126666  IN      NS      d.root-servers.net.
.                       126666  IN      NS      a.root-servers.net. ;; ADDITIONAL SECTION:
a.root-servers.net.     557725  IN      A       198.41.0.4
b.root-servers.net.     490757  IN      A       192.228.79.201
c.root-servers.net.     494796  IN      A       192.33.4.12
d.root-servers.net.     604214  IN      A       128.8.10.90
e.root-servers.net.     491068  IN      A       192.203.230.10
f.root-servers.net.     492932  IN      A       192.5.5.241
g.root-servers.net.     400973  IN      A       192.112.36.4
h.root-servers.net.     492311  IN      A       128.63.2.53
i.root-servers.net.     349084  IN      A       192.36.148.17
j.root-servers.net.     492099  IN      A       192.58.128.30
k.root-servers.net.     403770  IN      A       193.0.14.129
l.root-servers.net.     308080  IN      A       199.7.83.42
m.root-servers.net.     217613  IN      A       202.12.27.33 ;; Query time: 12 msec
;; SERVER: 202.96.69.38#53(202.96.69.38)
;; WHEN: Fri May 25 22:45:50 2012
;; MSG SIZE  rcvd: 436

(2)、常用查询

例如查询www.baidu.com这个域名的信息

[root@RHEL6 ~]#dig www.baidu.com

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> www.baidu.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 9532
;; flags: qr rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 4, ADDITIONAL: 3 ;; QUESTION SECTION:
;www.baidu.com.                 IN      A ;; ANSWER SECTION:
www.baidu.com.          805     IN      CNAME   www.a.shifen.com.
www.a.shifen.com.       251     IN      A       61.135.169.105
www.a.shifen.com.       251     IN      A       61.135.169.125 ;; AUTHORITY SECTION:
a.shifen.com.           65426   IN      NS      ns5.a.shifen.com.
a.shifen.com.           65426   IN      NS      ns4.a.shifen.com.
a.shifen.com.           65426   IN      NS      ns9.a.shifen.com.
a.shifen.com.           65426   IN      NS      ns7.a.shifen.com. ;; ADDITIONAL SECTION:
ns4.a.shifen.com.       450     IN      A       123.125.113.67
ns7.a.shifen.com.       216     IN      A       220.181.38.47
ns9.a.shifen.com.       263     IN      A       61.135.166.226 ;; Query time: 11 msec
;; SERVER: 202.96.69.38#53(202.96.69.38)
;; WHEN: Fri May 25 22:48:36 2012
;; MSG SIZE  rcvd: 210

解析过程说明:

· DNS客户端发包到DNS服务端请求www.baidu.com的IP地址,由于有一条CNAME记录;

· DNS客户端会访问www.a.shifen.com的域名服务器(相当于是访问www.baidu.com的域名服务器);

· 在这里www.a.shifen.com的域名服务器是一个负责DNS查询流量均衡的调度器,负责把DNS请求调度到ns5.a.shifen.com、ns6.a.shifen.com等域名服务器上

· 最后这些标记了NS的域名服务器会把百度的IP返回给DNS客户端

· 然后我们就得到了www.baidu.com的IP地址

(3)使用  +[no]short 运行简短输出

[root@RHEL6 ~]#dig sohu.com @202.102.134.68 -p 53 -t MX +short
10 sohumx.h.a.sohu.com.
5 sohumx1.sohu.com.

(4)、使用  +[no]trace 跟踪域名解析过程

[root@RHEL6 ~]#dig sohu.com @202.102.134.68 -p 53 -t MX +trace

; <<>> DiG 9.7.3-P3-RedHat-9.7.3-8.P3.el6_2.2 <<>> sohu.com @202.102.134.68 -p 5                                                      3 -t MX +trace
;; global options: +cmd
.                       465774  IN      NS      m.root-servers.net.
.                       465774  IN      NS      h.root-servers.net.
.                       465774  IN      NS      a.root-servers.net.
.                       465774  IN      NS      b.root-servers.net.
.                       465774  IN      NS      e.root-servers.net.
.                       465774  IN      NS      l.root-servers.net.
.                       465774  IN      NS      j.root-servers.net.
.                       465774  IN      NS      g.root-servers.net.
.                       465774  IN      NS      c.root-servers.net.
.                       465774  IN      NS      d.root-servers.net.
.                       465774  IN      NS      i.root-servers.net.
.                       465774  IN      NS      k.root-servers.net.
.                       465774  IN      NS      f.root-servers.net.
.                       465802  IN      RRSIG   NS 8 0 518400 20120531000000 201                                                      20523230000 56158 . rnJgCZ4R9UnWLKKme23oJa9wh5q9dYNvHZvwsrFtAHe8OtE8qNdeVDvh jyc                                                      3eJktGOMT77U336stCRE1b0KzPD7CZe04+plO9Ckm0wkFYFReg2Aa MTLxqI//hcUnIfixLXeq4bULt0                                                      rjfQTzjjh0d1vG9fPTbSIkgHle6WW5 +PM=
;; Received 397 bytes from 202.102.134.68#53(202.102.134.68) in 106 ms com.                    172800  IN      NS      g.gtld-servers.net.
com.                    172800  IN      NS      j.gtld-servers.net.
com.                    172800  IN      NS      e.gtld-servers.net.
com.                    172800  IN      NS      i.gtld-servers.net.
com.                    172800  IN      NS      h.gtld-servers.net.
com.                    172800  IN      NS      l.gtld-servers.net.
com.                    172800  IN      NS      m.gtld-servers.net.
com.                    172800  IN      NS      b.gtld-servers.net.
com.                    172800  IN      NS      d.gtld-servers.net.
com.                    172800  IN      NS      f.gtld-servers.net.
com.                    172800  IN      NS      a.gtld-servers.net.
com.                    172800  IN      NS      k.gtld-servers.net.
com.                    172800  IN      NS      c.gtld-servers.net.
;; Received 486 bytes from 192.228.79.201#53(b.root-servers.net) in 270 ms sohu.com.               172800  IN      NS      dns.sohu.com.
sohu.com.               172800  IN      NS      ns1.sohu.com.
sohu.com.               172800  IN      NS      ns2.sohu.com.
sohu.com.               172800  IN      NS      ns4.sohu.com.
;; Received 162 bytes from 192.33.14.30#53(b.gtld-servers.net) in 438 ms sohu.com.               600     IN      MX      10 sohumx.h.a.sohu.com.
sohu.com.               600     IN      MX      5 sohumx1.sohu.com.
sohu.com.               21600   IN      NS      ns2.sohu.com.
sohu.com.               21600   IN      NS      dns.sohu.com.
sohu.com.               21600   IN      NS      ns1.sohu.com.
sohu.com.               21600   IN      NS      ns4.sohu.com.
;; Received 229 bytes from 121.14.0.41#53(ns4.sohu.com) in 70 ms

文章来源:http://www.lampbo.org/linux-xuexi/linux-base/linux-command-use-dig-resolve-domain.html

nslookup命令详解

原文:http://blog.csdn.net/violet_echo_0908/article/details/52033725

nslookup命令用于查询DNS的记录,查看域名解析是否正常,在网络故障的时候用来诊断网络问题。 nslookup的用法相对来说还是蛮简单的,主要是下面的几个用法。

1 直接查询

这个可能大家用到最多,查询一个域名的A记录。

nslookup domain [dns-server]
  • 1

如果没指定dns-server,用系统默认的dns服务器。下面是一个例子:

[root@localhost ~]# nslookup baidu.com
Server: 10.30.7.177
Address: 10.30.7.177#53 Non-authoritative answer:
Name: baidu.com
Address: 123.125.114.144
Name: baidu.com
Address: 111.13.101.208
Name: baidu.com
Address: 180.149.132.47
Name: baidu.com
Address: 220.181.57.217
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

2 查询其他记录

直接查询返回的是A记录,我们可以指定参数,查询其他记录,比如AAAA、MX等。

nslookup -qt=type domain [dns-server]
  • 1

其中,type可以是以下这些类型:

  • A 地址记录
  • AAAA 地址记录
  • AFSDB Andrew文件系统数据库服务器记录
  • ATMA ATM地址记录
  • CNAME 别名记录
  • HINFO 硬件配置记录,包括CPU、操作系统信息
  • ISDN 域名对应的ISDN号码
  • MB 存放指定邮箱的服务器
  • MG 邮件组记录
  • MINFO 邮件组和邮箱的信息记录
  • MR 改名的邮箱记录
  • MX 邮件服务器记录
  • NS 名字服务器记录
  • PTR 反向记录
  • RP 负责人记录
  • RT 路由穿透记录
  • SRV TCP服务器信息记录
  • TXT 域名对应的文本信息
  • X25 域名对应的X.25地址记录

例如:

[root@localhost ~]# nslookup -qt=mx baidu.com 8.8.8.8
*** Invalid option: qt=mx
Server: 8.8.8.8
Address: 8.8.8.8#53 Non-authoritative answer:
Name: baidu.com
Address: 111.13.101.208
Name: baidu.com
Address: 123.125.114.144
Name: baidu.com
Address: 180.149.132.47
Name: baidu.com
Address: 220.181.57.217
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

3 查询更具体的信息

查询语法:

nslookup –d [其他参数] domain [dns-server]
  • 1

只要在查询的时候,加上-d参数,即可查询域名的缓存。

(转)Linux命令:使用dig,nslookup命令解析域名的更多相关文章

  1. 使用dig/nslookup命令查看dns解析详情

    dig-DNS lookup utility 当域名出现访问故障时,可通过域名解析来判断是否有错误的解析导致的问题. 可以看到有请求段和应答段,最后解析出的A记录有两条 dig命令做迭代查询 dig ...

  2. debian下使用dig/nslookup

    debian默认没有安装dig/nslookup命令,使用下面命令安装: apt-get install dnsutils red-hat系列使用: yum install bind-utils ho ...

  3. 【亲测有效】Ubuntu18.04 sudo apt update无法解析域名的解决方案

    问题描述如下: 拿起了封尘已久的ThinkPad,输入 sudo apt update 的时候,发现这个命令变得不好使了,具体出现的问题如下图所示: #( 09/08/19@ 2:44下午 )( py ...

  4. Linux下解析域名命令-dig 命令使用详解

    Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息.dig 命令主要用来从 DNS 域名服务器查询主机地址信息.dig的全称是 (dom ...

  5. 使用dig命令解析域名

    Linux下解析域名除了使用nslookup之外,开可以使用dig命令来解析域名,dig命令可以得到更多的域名信息. dig的全称是 (domain information groper).它是一个用 ...

  6. aix DNS 配置以及网络命令traceroute和nslookup 和 dig 命令

    DNS 域名系统 (DNS) 服务器将 IP 地址解释为其他计算机或网站的域名和地址.如果没有 DNS,您需要在 Web 浏览器中输入 IP 地址.例如,如果您未访问 DNS 并希望查看 IBM 的网 ...

  7. Linux命令之dig命令挖出DNS的秘密

    === [初次见面] 我相信使用nslookup的同学一定比使用dig的同学多,所以还是有必要花些时间给大家介绍一下dig的. dig,和nslookup作用有些类似,都是DNS查询工具. dig,其 ...

  8. Linux安装nslookup命令

    做DNS的人都知道nslookup命令是做什么用的,windows系统自带的.但是linux系统是不自带这个命令的,需要人手动安装.如果您不记得这是哪个软件包提供这个命令的话,那您还真会有些麻烦了.下 ...

  9. linux系统入门一些常用命令解析

    接触IT行业的时候,就使用了ubuntu系统做开发,那个时候是一头雾水,从习惯了window下的界面操作,到终端下的命令行操作,着实一开始让人很不习惯.但是没办法,那个时候公司每个人都用Ubuntu系 ...

随机推荐

  1. 【Android小技巧】android 按键如何能自动触发点击

    使用button.performClick();方法 EditText 中hint的字体跟 textSize的字体大小一样大

  2. [jQuery]使用jQuery.Validate进行客户端验证(初级篇)

    以前在做项目的时候就有个很大心病,就是微软的验证控件,虽然微软的验证控件可以帮我们完成大部分的验证,验证也很可靠上手也很容易,但是我就是觉得不爽,主要理由有以下几点: 1.拖控件太麻烦,这个是微软控件 ...

  3. 算法训练 Balloons in a Box (枚举,模拟)

    问题描述 你要写一个程序,使得能够模拟在长方体的盒子里放置球形的气球. 接下来是模拟的方案.假设你已知一个长方体的盒子和一个点集.每一个点代表一个可以放置气球的位置.在一个点上放置一个气球,就是以这个 ...

  4. 浅谈《守望先锋》中的 ECS 构架

    https://blog.codingnow.com/2017/06/overwatch_ecs.html 今天读了一篇 <守望先锋>架构设计与网络同步 .这是根据 GDC 2017 上的 ...

  5. [CQOI2012][bzoj2668] 交换棋子 [费用流]

    题面 传送门 思路 抖机灵 一开始看到这题我以为是棋盘模型-_-|| 然而现实是骨感的 后来我尝试使用插头dp来交换,然后又惨死 最后我不得不把目光转向那个总能化腐朽为神奇的算法:网络流 思维 我们要 ...

  6. HashMap resize导致死循环

    原文链接:https://blog.csdn.net/hll174/article/details/50915346 问题的症状 从前我们的Java代码因为一些原因使用了HashMap这个东西,但是当 ...

  7. 33 个 2017 年必须了解的 iOS/swift 开源库第三方库

    本文翻译自Medium,原作者为 Paweł Białecki&lt;img src="https://pic3.zhimg.com/v2-c786777447261347b0d97 ...

  8. Reincarnation HDU - 4622

    \(\color{#0066ff}{ 题目描述 }\) 给定一个字符串,多次询问某一字串的f值 f(s)代表s的不同字串数量 \(\color{#0066ff}{输入格式}\) 第一行T,代表数据组数 ...

  9. 最短路【洛谷P1462】 通往奥格瑞玛的道路

    P1462 通往奥格瑞玛的道路 题目背景 在艾泽拉斯大陆上有一位名叫歪嘴哦的神奇术士,他是部落的中坚力量 有一天他醒来后发现自己居然到了联盟的主城暴风城 在被众多联盟的士兵攻击后,他决定逃回自己的家乡 ...

  10. react 拆分组件于组件

    Todolist.js(这是父组件) import React, { Component,Fragment } from 'react'; import './style.css'; import T ...