コンピュータサイエンス基礎:直前対策パック

公式集、全トピックの解法の要点、20 問の演習問題。完全な解答は巻末にあります。

新しい問題科目に戻る

印刷ウィンドウで「PDF として保存」を選ぶと、コピーを端末に保存できます。

1公式と解法

記数法

位取り
2 進数 2k、8 進数 8k、16 進数 16k
10 進数へ
Σ dk·bk
10 進数から
基数で割り、余りを下から上へ読む
16 進数 ↔ 2 進数
16 進数 1 桁 = 4 ビット
2 の補数
ビットを反転して 1 を足す

命題論理と証明

真理値表の行
2ⁿ
含意
p → q ≡ ¬p ∨ q ≡ ¬q → ¬p
含意の否定
¬(p → q) ≡ p ∧ ¬q
同値(双条件)
p ↔ q ≡ (p → q) ∧ (q → p)
ド・モルガンの法則
¬(p ∧ q) ≡ ¬p ∨ ¬q, ¬(p ∨ q) ≡ ¬p ∧ ¬q
分配法則
p ∨ (q ∧ r) ≡ (p ∨ q) ∧ (p ∨ r), p ∧ (q ∨ r) ≡ (p ∧ q) ∨ (p ∧ r)
量化子の否定
¬∀x P(x) ≡ ∃x ¬P(x), ¬∃x P(x) ≡ ∀x ¬P(x)
肯定式(modus ponens)、否定式(modus tollens)
p → q, p ⊢ q; p → q, ¬q ⊢ ¬p

解き方

  1. 異なる変数の数を数えます:真理値表の行数は 2ⁿ で、最初の行はすべて 1 です。
  2. 部分式ごとに列を用意し、内側から順に列を埋めていきます。
  3. 各結合子の規則を適用します:→ が 0 になるのは 1 → 0 のときだけ、↔ は両辺が一致するとき 1 です。
  4. 同値の判定では最後の列を行ごとに比べます。論証の判定では、すべての前提が 1 である行だけを見ます。
  5. 量化された文を否定するには、¬ を内側へ移し、∀ と ∃ を入れ替え、内側の式を否定します。

デジタル論理:ゲート・カルノー図・フリップフロップ

基本ゲート
A·B, A + B, A′, (A·B)′, (A + B)′, A ⊕ B
ブールの規則
X + X′ = 1, X·X′ = 0, X + XY = X, XY + XY′ = X
ド・モルガンの法則
(X·Y)′ = X′ + Y′, (X + Y)′ = X′·Y′
カルノー図の並び順
00, 01, 11, 10 (Gray code)
2ᵏ 個のセルのグループ
k 個の変数が消える
4 対 1 マルチプレクサ
F = A′B′I0 + A′BI1 + AB′I2 + ABI3
フリップフロップ
D: Q⁺ = D, T: Q⁺ = T ⊕ Q, JK: Q⁺ = JQ′ + K′Q
カウンタ
n ビット:2ⁿ 状態; mod-N:2ⁿ ≥ N を満たす最小の n; fout = fclk/N
リップルカウンタ
fmax = 1/(n·tpd)
リングカウンタとジョンソンカウンタ
n 状態と 2n 状態

解き方

  1. 回路では、入力から出力へ向かってゲートを 1 つずつ進み、各配線に値を書き込むか、式を書いて真理値表を埋めましょう。
  2. 簡単化するには、1(とドントケアは X として)を、行と列がグレイコード 00, 01, 11, 10 のカルノー図に書き込みましょう。
  3. 1 を、1, 2, 4, 8, 16 個のセルからなる、できるだけ少なくできるだけ大きなグループで、端をまたぎながら覆いましょう。各グループは、一定のままの変数からなる 1 つの積項です。POS 形には 0 をグループ化します。
  4. フリップフロップとカウンタでは、各有効クロックエッジで入力を読み取り、エッジごとの状態を書き出し、n ビットのカウンタは 2ⁿ 個の状態で折り返すことを忘れないようにしましょう。

整数論と合同式

余りのある割り算
a = q·n + r, 0 ≤ r < n
ユークリッド
gcd(a, b) = gcd(b, a mod b)
最小公倍数
lcm(a, b) = a·b/gcd(a, b)
逆行列
a·a⁻¹ ≡ 1 (mod n), gcd(a, n) = 1
一次合同式
a·x ≡ b → x ≡ a⁻¹·b (mod n)
オイラーのトーシェント関数
φ(n) = n·∏(1 − 1/p), φ(pᵏ) = pᵏ − pᵏ⁻¹
フェルマー
aᵖ⁻¹ ≡ 1 (mod p)
RSA
n = pq, φ = (p − 1)(q − 1), d = e⁻¹ mod φ, c = mᵉ mod n, m = cᵈ mod n

解き方

  1. まずすべての数を n で割った余りに直します。余りは 0 から n − 1 の間です。
  2. 最大公約数は、ユークリッドの互除法で割り算を繰り返して求めます。最後の 0 でない余りが最大公約数です。
  3. 逆元は拡張ユークリッドの互除法で求め、a の係数を取ります。負なら n を足します。
  4. a·x ≡ b は a⁻¹ を掛けて解きます。2 つの合同式は x = r₁ + m₁k とおいて組み合わせます。
  5. べき乗では、指数を 2 進数で書いて平方を繰り返します。RSA では d = e⁻¹ mod φ(n)、φ(n) = (p − 1)(q − 1) です。

グラフ理論

握手補題
Σ deg(v) = 2|E|
完全グラフ
|E(Kn)| = n(n − 1)/2, |E(Km,n)| = m·n
正則グラフ
|E| = n·k/2
木と森
|E| = n − 1, |E| = n − c
木の葉
L = 2 + Σ (deg(v) − 2) over deg(v) ≥ 3
オイラー
閉路:すべての次数が偶数; 路:奇数次数がちょうど 2 つ
Kn のハミルトン閉路
(n − 1)!/2
ダイクストラ法の更新
d(v) = min(d(v), d(u) + w(u, v))
長さ L の歩道
(Mᴸ)ij

解き方

  1. 各頂点の次数を書き出します。次数の総和は辺の数の 2 倍になります。
  2. オイラーの問題では、グラフが連結であることを確かめ、奇数次数の頂点を数えます。
  3. 木では、辺が n − 1 本であることと握手補題を使います。
  4. ダイクストラ法では、暫定距離の表をつくり、毎回、未確定の頂点のうち最小のものを確定します。
  5. 最小全域木では、辺を重みの順に並べ、閉路をつくる辺を飛ばす方法(クラスカル法)か、始点から 1 本の木を成長させる方法(プリム法)を使います。

IPv4 サブネット化

サブネットあたりのホスト数
2(32 − prefix) − 2 (/31: 2, /32: 1)
ブロックサイズ
256 − (mask octet)
ネットワークアドレス
IP AND マスク
ブロードキャストアドレス
IP OR (NOT マスク):ホスト部のビットをすべて 1 にする
n ビット借りたときのサブネット数
2n

2演習問題

1.記数法ふつう
8 ビットの 2 の補数?−128?64?32?16?8?4?2?1

−19 を 8 ビットの 2 の補数パターンで表しなさい。そのパターンを符号なし 2 進数として読むと、10 進数での値 U はいくつですか?

N = −198 bit
U =
2.記数法むずかしい
24 ビットの 2 の補数, N = ??符号???????????????????????

24 ビットの 2 の補数で表せる最小(最も負の)整数 N はいくつですか?

24 bit
N =
3.命題論理と証明ふつう
abc¬a ∨ ¬bc ↔ (¬a ∨ ¬b)(b ↔ a) ∧ (c ↔ (¬a ∨ ¬b))111?110?101?100?011?010?001?000?

この論理式 (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) は、真理値表の 8 行のうち何行で真になりますか? この数を N とします。

(b ↔ a) ∧ (c ↔ (¬a ∨ ¬b))
N =
4.命題論理と証明むずかしい
∃x ¬F(x)∀x ¬F(x)∃x F(x)∀x F(x)

否定を最も内側まで移したとき、¬∃x F(x) と同値な主張はどれですか? クリックしてください。

¬∃x F(x)
  1. 1∃x ¬F(x)
  2. 2∀x ¬F(x)
  3. 3∃x F(x)
  4. 4∀x F(x)
5.デジタル論理:ゲート・カルノー図・フリップフロップふつう
ABCD000111100001111000111302040507060120130150141819011010

カルノー図を使って F(A, B, C, D) = Σm(1, 3, 8, 9) の最小の積和形(SOP)を求めてください。積項 N はいくつありますか?

F(A, B, C, D) = Σm(1, 3, 8, 9)
N =
6.デジタル論理:ゲート・カルノー図・フリップフロップむずかしい
CLKJK123456

正エッジトリガの JK フリップフロップが Q = 0 から始まり、6 回の立ち上がりクロックエッジで図の入力を受け取ります。Q は何回N状態を変えますか?

Q₀ = 0JK
N =
7.整数論と合同式ふつう

オイラーのトーシェント関数 φ(1089)、つまり 1 から 1089 までの整数のうち 1089 と互いに素なものの個数を求めてください。

n = 1089 = 32·112
φ(1089) =
8.整数論と合同式むずかしい
430c = me​ mod n?m = cd​ mod nm(n, e) = (943, 3)d

メッセージ m = 430 を RSA 公開鍵 (n, e) = (943, 3) で暗号化してください。暗号文 c を求めてください。

n = 943e = 3m = 430
c =
9.アルゴリズムと計算量ふつう

動的計画法(dynamic programming)が有効なのは、問題が次の性質を持つときです。

  1. A重複する部分問題と最適部分構造
  2. B部分問題がまったくないので、1 ステップで解ける
  3. Cランダムな入力のみ
  4. Dループが一つだけ
10.アルゴリズムと計算量むずかしい

挿入ソートはソート済みの入力に対して O(n) で動作します。これは比較ソートの Ω(n log n) の下界と矛盾しますか?

  1. Aいいえ。挿入ソートは比較ソートではないから
  2. Bはい。ただし 100 より短い配列の場合に限る
  3. Cいいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
  4. Dはい。したがって下界は誤りである
11.データ構造ふつう

二分最小ヒープの extract-min はどのように動作しますか。

  1. A配列の最後の要素を取り除く
  2. Bすべての葉から新しい最小値を探す
  3. C根を取り除き、すべての要素を 1 つ左にずらす
  4. D最後の要素を根に移し、下へ移動させる(sift down)
12.データ構造むずかしい

ブルームフィルタは「この要素は集合に含まれるか」という問いにどのように答えますか。

  1. A常に正確な答えを返す
  2. B偽陰性はあり得るが、偽陽性はない
  3. C偽陽性はあり得るが、偽陰性はない
  4. D数値に対してのみ答えられる
13.グラフ理論ふつう
ABCDEFGオイラー閉路オイラー路あり、閉路なしどちらでもない

この連結グラフには、オイラー閉路、閉路でないオイラー路、またはどちらもないのうち、どれがありますか? 答えをクリックしてください。

|V| = 7|E| = 9
  1. 1オイラー閉路
  2. 2オイラー路あり、閉路なし
  3. 3どちらでもない
14.グラフ理論むずかしい
ABCDE

E を始点かつ終点とする、長さ 2 の閉じた歩道はいくつありますか? 歩道では頂点や辺を繰り返してもかまいません。その数を N とします。

M = 隣接行列L = 2
N =
15.データベースと SQLふつう

並行するトランザクションが互いの未完了の変更を見ないことを意味する ACID 特性はどれですか?

  1. A可用性(Availability)
  2. B独立性(Isolation)
  3. C永続性(Durability)
  4. D原子性(Atomicity)
16.データベースと SQLむずかしい

テーブル b の列 y には値 1、2、NULL が入っています。SELECT * FROM a WHERE x NOT IN (SELECT y FROM b) は何を返しますか?

  1. Aa のすべての行
  2. Bまったく行を返さない
  3. Cx が 1 でも 2 でもない a の行
  4. Dx が NULL の a の行だけ
17.コンピュータネットワークふつう

HTTP はステートレスです。Web サイトは通常どのようにして、複数の要求にわたってユーザーのログイン状態を保ちますか?

  1. A各ユーザーに固定の IP アドレスを与えることによって
  2. Bセッション ID やトークンを入れた Cookie によって
  3. Cパスワードを URL に保存することによって
  4. DTCP コネクションを何日も開いたままにすることによって
18.コンピュータネットワークむずかしい

ある TCP コネクションのウィンドウは 64 KB、往復時間は 100 ms で、ウィンドウスケーリングはありません。最大スループットはおよそいくつですか?

  1. A約 0.5 Mbit/s
  2. B約 50 Mbit/s
  3. C約 640 Mbit/s
  4. D約 5 Mbit/s
19.IPv4 サブネット化ふつう
/?11111111111111111111111000000000ネットワーク部ホスト部

ある部署では、1 つのサブネット内に 353 個のホストアドレスが必要です。十分な大きさとなる最長のプレフィックス長 p(最小のサブネット)はいくつですか?

353 hosts
p =
20.IPv4 サブネット化むずかしい
第 3 オクテット 32 … 35012806413201608040201共通可変

あるルータは次のネットワークへの経路をもっています:10.74.32.0/24, 10.74.33.0/24, 10.74.34.0/24, 10.74.35.0/24。それらすべてをカバーする 1 つの集約経路の最長のプレフィックス長 p はいくつですか?

10.74.32.0/24 … 10.74.35.0/24
p =

3溶液

1.記数法

答え: U = 237

位取り記数法:各桁の値は、その数字に基数のべき乗を掛けたものです。2 進数では各桁の重みが 1、2、4、8、16、…、16 進数では 1、16、256、… で、A–F は 10–15 を表します。8 ビットの 2 の補数では、最上位ビットの重みが +128 ではなく −128 になり、こうして負の数を表します。

反転して 1 を足す

19 = 0001 0011
反転後: 1110 1100
+1 → 1110 1101

符号なしとして読む

1110 1101₂ = 256 − 19 = 237

答え

U = 237
2.記数法

答え: N = −8.389 × 10⁶

位取り記数法:各桁の値は、その数字に基数のべき乗を掛けたものです。2 進数では各桁の重みが 1、2、4、8、16、…、16 進数では 1、16、256、… で、A–F は 10–15 を表します。8 ビットの 2 の補数では、最上位ビットの重みが +128 ではなく −128 になり、こうして負の数を表します。

最も負の値

−223 = −8388608

答え

N = −8388608
3.命題論理と証明

答え: N = 2

真理値表:n 個の異なる変数をもつ論理式には、真理値のすべての組み合わせに対応する 2ⁿ 行があります(1 = 真、0 = 偽)。内側から順に進め、部分式ごとに列を用意します。¬a は値を反転させ、a ∧ b は両方が 1 のときだけ 1、a ∨ b は両方が 0 のときだけ 0、a → b は a = 1 かつ b = 0 のときだけ 0、a ↔ b は両辺が等しいとき 1 です。

真理値表を行ごとに見る

a = 1, b = 1, c = 1: b ↔ a = 1, ¬a = 0, ¬b = 0, ¬a ∨ ¬b = 0, c ↔ (¬a ∨ ¬b) = 0, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0
a = 1, b = 1, c = 0: b ↔ a = 1, ¬a = 0, ¬b = 0, ¬a ∨ ¬b = 0, c ↔ (¬a ∨ ¬b) = 1, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 1
a = 1, b = 0, c = 1: b ↔ a = 0, ¬a = 0, ¬b = 1, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 1, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0
a = 1, b = 0, c = 0: b ↔ a = 0, ¬a = 0, ¬b = 1, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 0, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0
a = 0, b = 1, c = 1: b ↔ a = 0, ¬a = 1, ¬b = 0, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 1, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0
a = 0, b = 1, c = 0: b ↔ a = 0, ¬a = 1, ¬b = 0, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 0, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0
a = 0, b = 0, c = 1: b ↔ a = 1, ¬a = 1, ¬b = 1, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 1, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 1
a = 0, b = 0, c = 0: b ↔ a = 1, ¬a = 1, ¬b = 1, ¬a ∨ ¬b = 1, c ↔ (¬a ∨ ¬b) = 0, (b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)) = 0

値が 1 の行を数える

(b ↔ a) ∧ (c ↔ (¬a ∨ ¬b)): 0, 1, 0, 0, 0, 0, 1, 0
N = 2

答え

N = 2
4.命題論理と証明

答え: ∀x ¬F(x)

量化子と論証:¬∀x P(x) ≡ ∃x ¬P(x)、¬∃x P(x) ≡ ∀x ¬P(x)。否定を内側へ移し、通過する量化子をすべて入れ替え、内側の式は ¬(a → b) ≡ a ∧ ¬b のような命題論理の法則で否定します。論証は、すべての前提が 1 であるどの行でも結論が 1 のとき、妥当です。前提が真で結論が偽になる行が 1 つでもあれば、それは反例であり、その論証が妥当でないことを示します。

否定を内側へ移す

¬∃x F(x) ≡ ∀x ¬F(x)

答え

∀x ¬F(x)

ほかの選択肢は、量化子がそのままになっているか、量化子の順序が変わっているか、内側の式の否定が間違っているかのどれかです。

5.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: N = 2

カルノー図:セルはグレイコード(00, 01, 11, 10)の順に並んでいるので、端をまたぐものも含め、隣り合うセルはちょうど 1 つの変数だけが異なります。1 を、1, 2, 4, 8, 16 個のセルからなる長方形で、できるだけ大きく、できるだけ少ない数でグループ化し、すべての 1 を覆います。各グループは 1 つの積項で、グループの中で一定のままの変数からなります。2ᵏ 個のセルのグループでは k 個の変数が消えます。ドントケア(X)はグループを大きくするために使えますが、覆う必要はありません。代わりに 0 をグループ化すると、最小の POS 形が得られます。

ABCD000111100001111000111302040507060120130150141819011010

1 をグループ化する

各グループは 2ᵏ 個のセルからなる長方形です。端のセルは、反対側の端のセルと隣り合っています。

A′B′D
AB′C′

最小の SOP 形

F = A′B′D + AB′C′
N = 2

答え

N = 2
6.デジタル論理:ゲート・カルノー図・フリップフロップ

答え: N = 4

フリップフロップとカウンタ:フリップフロップは、有効なクロックエッジでだけ変化します。D は入力をコピーし(Q⁺ = D)、T は T = 1 のときトグルし、JK は 00 で保持、01 でリセット、10 でセット、11 でトグルします。n ビットの 2 進カウンタには 2ⁿ 個の状態があり、2ⁿ を法として数えます。mod-N カウンタは 0, 1, …, N − 1 と数えて 0 に戻り、2ⁿ ≥ N を満たす最小の n 個のフリップフロップが必要です。リップルカウンタの各段は周波数を半分にするので、mod-N カウンタの最後の出力は fclk/N で動作します。n 個のフリップフロップのジョンソンカウンタには 2n 個の状態があり、リングカウンタには n 個あります。

エッジごとの Q

JK フリップフロップ:00 は保持、01 はリセット(Q = 0)、10 はセット(Q = 1)、11 はトグルです。

1: J = 0, K = 1 → Q = 0
2: J = 0, K = 1 → Q = 0
3: J = 1, K = 0 → Q = 1
4: J = 1, K = 1 → Q = 0
5: J = 1, K = 0 → Q = 1
6: J = 1, K = 1 → Q = 0

変化を数える

0 → 0 → 0 → 1 → 0 → 1 → 0
N = 4

答え

N = 4
7.整数論と合同式

答え: φ(1089) = 660

逆元と合同式:a が n を法として逆元をもつのは、gcd(a, n) = 1 のときに限ります。拡張ユークリッドの互除法で 1 = s·n + t·a と書くと、a⁻¹ ≡ t (mod n) です。gcd(a, n) = 1 のとき、合同式 a·x ≡ b (mod n) の解は x ≡ a⁻¹·b です。法が互いに素な 2 つの合同式 x ≡ r₁ (mod m₁) と x ≡ r₂ (mod m₂) には、m₁·m₂ を法として 1 つの解があります(中国の剰余定理)。オイラーの φ(n) は、1 から n までの数のうち n と互いに素なものの個数です:φ(n) = n·∏(1 − 1/p)。

素因数

1089 = 32·112

トーシェント関数

φ(1089) = φ(9)·φ(121) = 6·110 = 660

答え

φ(1089) = 660
8.整数論と合同式

答え: c = 784

冪剰余と RSA:aᵏ mod n は反復二乗法で計算します:k を 2 進数で書き、二乗し、毎回簡約し、ビットが 1 の冪を掛けます。フェルマー:素数 p が a を割り切らないとき aᵖ⁻¹ ≡ 1 (mod p) なので、指数は p − 1 を法として簡約できます。RSA:素数 p と q を選び、n = p·q、φ(n) = (p − 1)(q − 1) とします。公開指数 e は φ(n) と互いに素で、秘密指数は d = e⁻¹ mod φ(n) です。暗号化は c = mᵉ mod n、復号は m = cᵈ mod n で行います。

反復二乗法

3 = 2 + 1
4301 ≡ 430 (mod 943)
4302 ≡ 72 (mod 943)
4303 ≡ 430·72 ≡ 784 (mod 943)

暗号文

c = 784

答え

c = 784
9.アルゴリズムと計算量

答え: A · 重複する部分問題と最適部分構造

これが答えになる理由

重複する部分問題の結果を保存する(メモ化または表計算)ことで繰り返しの処理を避け、指数時間のアルゴリズムを多項式時間に変えられます。

答え

A · 重複する部分問題と最適部分構造
10.アルゴリズムと計算量

答え: C · いいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない

これが答えになる理由

この下界は、どの比較ソートもサイズ n のある入力に対して約 n log n 回の比較を必要とすることを述べています。特別な入力ではずっと速くなりえます。

答え

C · いいえ。下界はすべての入力にわたる最悪の場合に適用されるのであって、すべての入力に適用されるわけではない
11.データ構造

答え: D · 最後の要素を根に移し、下へ移動させる(sift down)

これが答えになる理由

最後の要素が根の穴を埋め、ヒープ性が成り立つまでより小さい子と交換されます。これには O(log n) かかります。

答え

D · 最後の要素を根に移し、下へ移動させる(sift down)
12.データ構造

答え: C · 偽陽性はあり得るが、偽陰性はない

これが答えになる理由

ある要素に対応するビットのどれかが 0 なら確実に存在せず、すべて 1 ならおそらく存在します。ブルームフィルタは精度と引き換えに非常に少ないメモリで済みます。

答え

C · 偽陽性はあり得るが、偽陰性はない
13.グラフ理論

答え: どちらでもない

オイラー、ハミルトン、木:連結グラフは、すべての頂点の次数が偶数のときオイラー閉路(すべての辺を 1 回ずつ通って始点に戻る)をもち、ちょうど 2 つの頂点の次数が奇数のとき、閉路でないオイラー路をもちます。その路は、一方の奇数次数の頂点から他方へ通ります。ハミルトン閉路はすべての頂点を 1 回ずつ訪れ、Kn には (n − 1)!/2 個あります。n 個の頂点をもつ木には n − 1 本の辺があり、m 本の辺をもつ連結グラフは、m − n + 1 本の辺を取り除いても全域木が残ります。

次数

deg(A) = 1, deg(B) = 3, deg(C) = 2, deg(D) = 4, deg(E) = 3, deg(F) = 2, deg(G) = 3

奇数次数の頂点

A, B, E, G → 4
どちらでもない

答え

どちらでもない
14.グラフ理論

答え: N = 3

次数:頂点の次数は、その頂点に接する辺の数です。どの辺にも端が 2 つあるので、次数の和は辺の数の 2 倍になります:Σ deg(v) = 2|E|(握手補題)。したがって、奇数次数の頂点の数は偶数です。Kn には n(n − 1)/2 本の辺があり、n 個の頂点をもつ k 正則グラフには nk/2 本、n 個の頂点をもつ木には n − 1 本の辺があります。

隣接行列

A: 0 1 0 0 0
B: 1 0 1 1 1
C: 0 1 0 0 1
D: 0 1 0 0 1
E: 0 1 1 1 0

共通の隣接頂点

(M²)EE = 0·0 + 1·1 + 1·1 + 1·1 + 0·0 = 3

答え

N = 3
15.データベースと SQL

答え: B · 独立性(Isolation)

これが答えになる理由

独立性は並行するトランザクションを互いに分離します。分離レベルによって、それをどれだけ厳密に適用するかが決まります。

答え

B · 独立性(Isolation)
16.データベースと SQL

答え: B · まったく行を返さない

これが答えになる理由

NULL との比較は UNKNOWN なので、条件全体が TRUE になることはありません。NOT EXISTS を使うか NULL を除外すれば、この落とし穴を避けられます。

答え

B · まったく行を返さない
17.コンピュータネットワーク

答え: B · セッション ID やトークンを入れた Cookie によって

これが答えになる理由

サーバーはセッション ID やトークンを含む Cookie を設定し、ブラウザーは要求のたびにそれを返すため、サーバーはユーザーを識別できます。

答え

B · セッション ID やトークンを入れた Cookie によって
18.コンピュータネットワーク

答え: D · 約 5 Mbit/s

これが答えになる理由

スループット ≤ ウィンドウ / RTT = 65,536 × 8 ビット / 0.1 s ≈ 5.2 Mbit/s です。リンクがどれほど速くても変わりません。

答え

D · 約 5 Mbit/s
19.IPv4 サブネット化

答え: p = 23

IPv4 サブネット化:アドレスは 32 ビットです。プレフィックス /p は先頭の何ビットがネットワークを表すかを示し、残りの 32 − p ビットでホストを番号付けします。サブネットには 2³²⁻ᵖ 個のアドレスがありますが、最初(ネットワークアドレス)と最後(ブロードキャストアドレス)はホストに割り当てられないため、2³²⁻ᵖ − 2 台のホストが収まります。 例外:/31(ポイントツーポイントリンク、RFC 3021)は 2 つのアドレスを両方ともホストに使い、/32 は単一のアドレス(単一ホストまたはループバック)です。

必要なホストビット数

28 − 2 = 254 < 353
29 − 2 = 510 ≥ 353 → h = 9

プレフィックス長

p = 32 − 9 = 23

答え

p = /23
20.IPv4 サブネット化

答え: p = 22

経路集約:集約経路 a.b.c.0/p は、最初の p ビットが一致するすべてのネットワークをカバーします。最初と最後のネットワークの異なるオクテットを 2 進数で書きます。共通する先頭のビット数に、それより前のオクテットのビット数を加えたものが最長の集約プレフィックスです。

ビットを比べる

32 = 00100000
35 = 00100011
共通する先頭のビット:6

プレフィックス長

p = 16 + 6 = 22

答え

p = /22

集約経路:10.74.32.0/22

ExamProblems · examproblems.com/courses/computer-science-fundamentals