槍俠(一道暴力題)

2021-10-06 13:30:30 字數 1458 閱讀 3279

由於r −l

<=10

r-l<=10

r−l<=1

0,所以考慮列舉每一段的長度len,又因為字符集並不大,根據抽屜原理,總共最多有51個段。所以我們列舉len,計算與每個點最早衝突的點的位置,就是把點按mod

lenmod~~len

modlen

分組。然後列舉起點,看每個起點可以往後擴充套件到什麼位置:用st表維護當前選擇的區間中最近的衝突位置,然後看是否可以把下乙個段選進來。

複雜度o

(510∗n

)o(510*n)

o(510∗

n)

#include

#include

#include

#include

#include

using

namespace std;

const

int maxn=

5e5+5;

const

int inf=

1e9;

inline

intread()

while((

isdigit

(c))

&&(c!=

eof)

)return t*f;

}int n,l,r,s,lg[maxn]

,ans;

char c[maxn]

;int sum[maxn]

,a[maxn]

,ch[maxn][52

],pos[maxn]

,st[maxn][20

];#define min(a,b) (a)

inline

intget

(int l,

int r)

signed

main()

else

}scanf

("%s"

,c+1);

for(

int i=

1;i<=n;i++

)for

(int len=l;len<=r;len++

)for

(int j=1;

(1<

<=n;j++)}

for(

int i=

1;i<=n;i++)if

(i+now*len-

1>n)

now--;if

(now>=s)}}

printf

("%d\n"

,ans)

;return0;

}

一道演算法題

兩個燒杯,乙個放糖乙個放鹽,用勺子舀一勺糖到鹽,攪拌均勻,然後舀一勺混合 物會放糖的燒杯,問你兩個燒杯哪個雜質多?一樣多吧 對的 為啥?是不是因為 糖和鹽本來就是均勻的 因為,就算不攪拌均,你放一勺過去,那邊放一勺不含雜質的過來,那麼都是一勺雜之 如果攪拌均勻的話也是一樣 小依 21 45 32 也...

一道演算法題

1.上午主要做了對翻譯任務的劃分,下午把 翻譯完畢。2.明天要講的演算法題 對乙個集合,求出其連續元素組成的子集中,和最大的子集 我對這道題的理解是 1 若集合中最小值大於0,意味著所有的都大於0,則最大的子集和,為所有值加起來 2 若集合中最大值小於0,意味著所有的都小於0,則最大的子集和,為集合...

一道演算法題

include using namespace std const int size 5 int max sub array const int a,int n,int m int max matrix const int a size int row,int col,int subsize int...