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

2021-10-02 20:50:03 字數 2033 閱讀 8563

先將兩個陣列排好序,從兩邊列舉最大的k個數相加,最小的就是最大的第k個數

#include

#include

#include

#include

#include

using

namespace std;

const

int n =

100050

;int a[n]

, b[n]

, n, k, ans =

2e8;

intmain

(void

)

如果直接模擬的話會超時,用兩個陣列來記錄列行和列受到的傷害

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

const

int m =

1e9+

7, n =

2005

;ll x[n]

, y[n]

, xy[n]

[n];

intmain

(void

)for

(int i =

1; i <= n; i++

)for

(int j =

1; j <= m; j++

) ans =

(ans +

(x[i]

+ y[j]

- xy[i]

[j])

*(i + j)

% m)

% m;

printf

("%lld\n"

, ans)

;return0;

}

一開始忘記了初始化 t = 0

#include

#include

#include

using

namespace std;

const

int n =

1e6+5;

char st[n]

, s[n]

;int

main

(void)'

&& st[t]=='

printf

("%d\n"

, t);}

return0;

}

設三角形的三邊為a、b、c,三個圓的半徑為r1、r2、r3,有

r1+r2&=a\\ r1+r3&=b\\ r2+r3&=c \end \right.

⎩⎪⎨⎪⎧​

r1+r

2r1+

r3r2

+r3​

=a=b

=c​解得

r1&=(a+b-c)/2\\ r2&=(a-b+c)/2\\ r3&=(-a+b+c)/2 \end \right.

⎩⎪⎨⎪⎧​

r1r2

r3​=

(a+b

−c)/

2=(a

−b+c

)/2=

(−a+

b+c)

/2​∴所有三角形都能畫出符合要求的圓

#include

#include

#include

#include

#include

#include

using

namespace std;

typedef

long

long ll;

intmain

(void

)return0;

}

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

長期更新,補完為止 2 g 判正誤 題意 t組資料。判斷a d b e c f是否等於g。1e9 a,b,c,g 1e9,0 d,e,f 1e9。保證不會出現指數和底數同為 0 的情況。思路 硬算會tle或mle。快速冪取模,為了增加過題概率,多取幾個模數判斷。includeusing namesp...

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...