Nav apraksta

wolves b6c8c03411 251013 5 mēneši atpakaļ
23 3f58f483ff init 6 mēneši atpakaļ
24 3f58f483ff init 6 mēneši atpakaļ
25 b6c8c03411 251013 5 mēneši atpakaļ
dataStruct 3f58f483ff init 6 mēneši atpakaļ
dynamic planning a96de06a95 Rename *22.cpp to 22.cpp 5 mēneši atpakaļ
else 3f58f483ff init 6 mēneši atpakaļ
greed 3f58f483ff init 6 mēneši atpakaļ
key 3f58f483ff init 6 mēneši atpakaļ
test 3f58f483ff init 6 mēneši atpakaļ
tools 3f58f483ff init 6 mēneši atpakaļ
we 3f58f483ff init 6 mēneši atpakaļ
.gitignore 3f58f483ff init 6 mēneši atpakaļ
README.md 3f58f483ff init 6 mēneši atpakaļ
main.c 3f58f483ff init 6 mēneši atpakaļ
main.go 3f58f483ff init 6 mēneši atpakaļ
tools.h 3f58f483ff init 6 mēneši atpakaļ

README.md

  • 02/2506
    • for (const string &word : words)
      {
      int state = 0;
      for (char c : word)
      {
          state |= 1 << (c - 'a');
      }
      res += cnt[state];
      cnt[state]++;
      }
      
    • 这是一种位压缩算法,巧妙的利用二进制的位来表示一个单词中出现的所有字母。

    • 关键就是state |= 1 << (c - 'a');这一行。这一行的作用是将state的第(c - 'a')位设为1,这样就可以表示这个单词中出现了字母c。

备用站点 当前处于降级运行的备用站点,仅供应急访问,数据和功能可能不是最新。