class Solution {
public:
    static void count(const string& s, int* counts) {
        for (char c : s) {
            counts[c]++;
        }
    }

    bool isAnagram(string s, string t) {
        if (s.size() != t.size()) {
            return false;
        }
        // strings are equal length

        int sCount[256] = {};
        int tCount[256] = {};

        count(s, sCount);
        count(t, tCount);

        for (char c : s) {
            if (sCount[c] != tCount[c]) {
                return false;
            }
        }

        return true;
    }
};