hash表 收集雪花

2022-06-20 01:03:11 字數 997 閱讀 4495

題目描述

不同的雪花往往有不同的形狀。在北方的同學想將雪花收集起來,作為禮物送給在南方的同學們。一共有n個時刻,給出每個時刻下落雪花的形狀,用不同的整數表示不同的形狀。在收集的過程中,同學們不希望有重複的雪花。你可以從任意a時刻開始,在b時刻停止。a到b時刻中間的雪花也都將被收集。他們希望收集的雪花最多。

輸入第一行乙個正整數n;第2行到第n+1行表示n個時刻雪花的形狀。

輸出最多能收集雪花的數量。

5

1 2 3 2 1

樣例輸出
3

提示

n≤1e6,xi≤1e9

【題解】

這個題目其實用的是一種的hash方式,其實就是我們常用的離散化操作。

1、另外乙個陣列存放相同資料,然後進行排序。

2、因為大小相同可以看成乙個數,所以相同的話,可以用lower_bound來寫,因為是大於等於某個數,等於可以看成對應的大小關係。

3、然後進行雙指標方法來跑最大區間的不同種類的個數。

【**】

1 #include2 #include3 #include4 #include5

using

namespace

std;

6 typedef unsigned long

long

ull ;

7const

int n = 1e6+10;8

const

int m = 5e6+10;9

const ull base = 131;10

inta[n],c[n],h[m],n;

11ull b[n];

12void

dispersed()17}

18int

main()

1933 printf("

%d\n

",res );

34return0;

35 }

view code

137 雪花雪花雪花 hash

有n片雪花,每片雪花由六個角組成,每個角都有長度。第i片雪花六個角的長度從某個角開始順時針依次記為ai,1,ai,2,ai,6 因為雪花的形狀是封閉的環形,所以從任何乙個角開始順時針或逆時針往後記錄長度,得到的六元組都代表形狀相同的雪花。例如ai,1,ai,2,ai,6 和ai,2,ai,3,ai,...

To Heart 題解 收集雪花

題目描述 不同的雪花往往有不同的形狀。在北方的同學想將雪花收集起來,作為禮物送給在南方的同學們。一共有n個時刻,給出每個時刻下落雪花的形狀,用不同的整數表示不同的形狀。在收集的過程中,同學們不希望有重複的雪花。你可以從任意 a時刻開始,在 b時刻停止。a到 b時刻中間的雪花也都將被收集。他們希望收集...

演算法收集 Hash解析 01 hash定義

hash雜湊演算法詳細解析 一 本文詳細描述了hash演算法的通用模式,在這個基礎上對目前作為標準的幾種主要hash演算法進行了一些分析 md5,ripemd系列,sha系列,tiger以及剛加入到標準不久的whirlpool。給出了部分演算法的 1 hash定義 傳統hash函式的定義 乙個has...