Day52力扣打卡

打卡记录

在这里插入图片描述


Collapsing Strings(Trie树)

链接

#include <iostream>
#include <algorithm>
using namespace std;
const int N = 2e6 + 10;
int son[N][26], idx, cnt1[N], cnt2[N];
int main()
{
   
	auto insert = [&](string& str, int* cnt) {
   
		int p = 0;
		for (int i = 0; i < str.size(); ++i)
		{
   
			int u = str[i] - 'a';
			if (!son[p][u]) son[p][u] = ++idx;
			p = son[p][u];
			cnt[p]++;
		}
	};
	int n = 0;
	long long ans = 0;
	cin >> n;
	for (int i = 1; i <= n; i++)
	{
   
		string s;
		cin >> s;
		insert(s, cnt1);
		reverse(s.begin(), s.end());
		insert(s, cnt2);
		ans += 2ll * n * s.length();
	}
	for (int i = 1; i <= idx; i++)  ans -= 2ll * cnt1[i] * cnt2[i];
	cout << ans;
}

第 N 位数字(数学规律)

链接

class Solution:
    def findNthDigit(self, n: int) -> int:
        count, digit, start = 9, 1, 1
        while n > count:
            n -= count
            digit += 1
            start *= 10
            count = start * 9 * digit
        num = start + (n - 1) // digit
        return int(str(num)[(n - 1) % digit])

相关推荐

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2023-12-07 06:04:08       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2023-12-07 06:04:08       100 阅读
  3. 在Django里面运行非项目文件

    2023-12-07 06:04:08       82 阅读
  4. Python语言-面向对象

    2023-12-07 06:04:08       91 阅读

热门阅读

  1. ssh免密远程登录主机并执行命令

    2023-12-07 06:04:08       55 阅读
  2. 绘制动态心形图的MATLAB代码

    2023-12-07 06:04:08       75 阅读
  3. 【WPF】扫描的方式发现局域网中的Android设备

    2023-12-07 06:04:08       54 阅读
  4. 【第二章】用于基因组数据分析的 R 简介

    2023-12-07 06:04:08       53 阅读
  5. C++ 引用

    2023-12-07 06:04:08       54 阅读
  6. WordPress发布文件随机设置作者昵称信息

    2023-12-07 06:04:08       56 阅读
  7. 图像处理领域的应用

    2023-12-07 06:04:08       58 阅读
  8. 第三章 核心设计与架构:

    2023-12-07 06:04:08       54 阅读
  9. stable-diffusion-webui

    2023-12-07 06:04:08       65 阅读