どんぐりの世界に答えを出すブログ

世の中の全ての問題に答えを出すブログ。学校では答えを教えてくれない日常や実際、人生上の問題に「答え」を出していきます。あなたが疑問に思う問題も募集中。

【院試解答】東大院工学系研究科電気系工学専攻 2021年 問題4

免責

 この解答・解説は当ブログ管理人のものであり、間違っている可能性もあります。
 この記事の記載内容によって生じた損失や損害については、当ブログ管理人は一切責任を負いません。

 が、間違っている箇所や、よりよい解法があれば後から見に来た人のためにもコメント欄に残していってもらえると、幸いです。

 あと、解説でこれが解ければ院試は受かる、的なことを言っていますが、一回しか院試を受けたことがない管理人の所感なので真剣にはあてになさらず。
 でももちろん、管理人が実際にそう感じたことを書いています。

問題

 東大院工学系電気系工学専攻2021年問題4

解答

※昔から電子工作を趣味としている管理人は、問題4の難易度の感覚がバグっているので、「難しい」と記載したもの以外はあまり参考にしないでください。

I

(1) 難易度:普通※

(2) 難易度:普通※

(3) 難易度:普通※

PCで書くのが面倒だったので載せませんがカルノー図を書きます。

(4) 難易度:普通※

(5) 難易度:普通※

(1) 難易度:普通※

ハッシュテーブルに一般的な書き方があるわけではないと思うので、書き方はなんでもいいと思う。

(2) 難易度:普通※

if(check == NULL) {
  table[H(x)] = new;
} else {
  while(check->next != NULL) check = check->next;
  check->next = new;
}

(3) 難易度:普通※

int search(int x) {
  struct node *check = table[H(x)];
  while(check != NULL) {
    if(check->value == x) return 1;
    check = check->next;
  }
  return 0;
}

(4) 難易度:普通※

xを格納するノードを消す際にその子ノードを消さずに親につなげること。
また、xを格納するノードのメモリを開放すること。

関連記事

sekakota.hatenablog.com

sekakota.hatenablog.com

sekakota.hatenablog.com