Menu
Coddy logo textTech

Practice #3

Coddyの「ハッシュテーブル - データ構造シリーズ #4」コースのレッスン 12/14。

challenge icon

チャレンジ

簡単

2つの文字列 s1s2 を受け取り、それらがアナグラム(順序を問わず、文字のマルチセットが同じであること)であるかどうかを返す関数 isAnagram を作成してください。

比較は大文字と小文字を区別します。長さが異なる文字列は決してアナグラムにはなりません。

hashmap.<ext> で提供されている HashMap クラスを使用する必要があります。セット、辞書、マップなどの言語組み込み機能は使用しないでください。

自分で試してみよう

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <stdbool.h>
#include "solution.h"

int main() {
    char s1[8192];
    char s2[8192];
    if (!fgets(s1, sizeof(s1), stdin)) s1[0] = '\0';
    if (!fgets(s2, sizeof(s2), stdin)) s2[0] = '\0';
    s1[strcspn(s1, "\r\n")] = '\0';
    s2[strcspn(s2, "\r\n")] = '\0';
    bool r = isAnagram(s1, s2);
    printf("%s\n", r ? "true" : "false");
    return 0;
}

ハッシュテーブル - データ構造シリーズ #4のすべてのレッスン