2020牛客寒假集訓營1

2022-05-22 18:51:10 字數 3174 閱讀 9330

b.kotori和bangdream

大水題

#include #include 

#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

const

int n = 1e6 + 10

;using

namespace

std;

double

n,a,x,b;

double

ans1,ans2;

intmain()

d.hanayo和公尺飯

簽到題

#include #include 

#include

#include

#include

#include

#include

#include

#define ll long long

using

namespace

std;

const

int n=1e6+10

;int

n;int

a[n];

intt;

intmain()

for(int i=1;i<=n;i++)

}return0;

}

a.honoka和格點三角形

滿足"好三角形"的情況只有兩種:

1.底為1,高為2的三角形

2.底為2,高為1的三角形

然後自己去畫圖數一數就好了

#include #include 

#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

const

int n = 1e6 + 10

;using

namespace

std;

ll n,m;

ll ans;

ll mod=1e9+7

;int

main()

e.rin和快速迭代

直接暴力列舉到sqrt(n),要特別注意當列舉完的所得的因數是奇數時.

#include #include 

#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

const

int n = 1e6 + 10

;using

namespace

std;

ll n;

inta,b;

intmain()

}if(flag==1) n=2*a;

else n=2*(a-1)+1

; a=0

; b++;

} cout

}

g.eli和字串

這道題很巧,和幾天cf上的一道題非常的相似,這兒也一併提供原題,有興趣的可以去看看:

這題我們首先先將string中每個字母出現的次數存進乙個陣列當中,並記錄字母出現最多的次數m,如果題目所給的t>m,直接輸出-1.

接下來我們用乙個二維的vector來記錄string中每個字母的位置,然後從string的第乙個字母開始進行遍歷,如果當前字母之後出現的次數小與t,那麼就不滿足,直接遍歷下乙個.

否則,我們直接用二維的vector來找到當前字母之後的第t個相同字母的位置,並減去當前字母的位置,得到滿足條件的連續子串的長度,用乙個min函式來記錄答案.

其實本題對於像我這樣的菜雞最大的難點在於這個二維vector的使用,大家可以去了解一下

#include #include 

#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

const

int n = 1e6 + 10

;using

namespace

std;

intn,t;

int num[26

];int m=-1

;int ans=n;

int a[30]=;

string

s;vector

a[n];

intmain()

if(t>m)

else

}cout

<}

return0;

}

h.nozomi和字串

這題是一道滑動視窗的經典題,大家可以去看看"滑動視窗"這個概念,具體的等我以後有時間再來補

#include #include 

#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

const

int n = 1e6 + 10

;using

namespace

std;

intn,k;

string

s;int

t[n];

intmain()

ml=max(ml,r-l+1

); r++;

}cout

}

2020牛客寒假演算法基礎集訓營1

找規律,推公式 三角形個數為2 m n m n m 1 n 1 2 m n mn m 1 n 1 2 m n mn m 1 n 1 include include include include using namespace std typedef long long ll const int m...

2020牛客寒假演算法基礎集訓營1

h題 突然發現h題可以用好多種方法做的。方法一 雙指標,維護乙個修改次數小於等於k的區間 include using namespace std typedef long long ll const int mod 1e9 7 const int n 1e5 5 const int inf 0x3f...

2020牛客寒假演算法基礎集訓營1

a honoka和格點三角形 honoka最近在研究三角形計數問題。她認為,滿足以下三個條件的三角形是 好三角形 1.三角形的三個頂點均為格點,即橫座標和縱座標均為整數。2.三角形的面積為1 3.三角形至少有一條邊和 x軸或y 軸平行。honoka想知道,在平面中選取乙個大小為 的矩形格點陣,可以找...