訓練賽 2023年1月16日訓練賽總結

2021-08-14 17:05:52 字數 4211 閱讀 8875

訓練賽位址[ rank=3

總結一下訓練賽的情況,53分鐘出6道水題以後暫列第一,手速其實還可以,狀態也不錯,不過之後可能就浮躁了,然後看題目也看不全,寫**也是缺三漏四。

c題錯在沒有初始化陣列。wa1。

d題沒有看資料範圍一看題就以為是最長上公升子串行,然後t了,然後重新看題目,才發現是每次上公升1的子串行,直接可以o(1),沒仔細看題,太自信了。tle1。

e題bfs連續兩個tle,都沒有發現原因,其實就是沒有vis判斷,然後如果不能碰到還要直接判斷,這個題做得時候思路不清晰,最後還是推了乙個公式算是勉強出來,太浮躁。

f題最搞笑,只要乙個貪心就能做,然後看見資料範圍很小上來就二進位制列舉,然後寫了1個小時,雖然1發過,但是費了很多時間,真的沒有仔細看題。

i題是最有問題的,心態不好,字典序的回文串,都不知道怎麼處理,不自己手寫一下,然後就在亂想,真的應該反思一下。wa21。

總結都是水題,稍微有點難度的題都能準確解決,但是對於水題太粗心了,也不自己手寫一下,實在不應該。

好題也是有的

1.h題 weekend gym101020h

先計算任意兩點之間的距離然後列舉9個點的出現次序進行取值。

/********************************

auther: jianwei

blog :

********************************/

//#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

#define pi acos(-1)

#define filein freopen("in.txt","r",stdin)

#define fileout freopen("out.txt","w",stdout)

#define clr(x) memset(x,0,sizeof(x))

#define mem(a,x) memset(a,x,sizeof(a))

#define pb(x) push_back(x)

#define pf(x) push_front(x)

#define for(x,a,b) for(int x=a;x#define rfor(x,a,b) for(int x=a;x>b;x--)

#define for(x,a,b) for(int x=a;x<=b;x++)

#define rfor(x,a,b) for(int x=a;x>=b;x--)

#define pll pair

#define pii pair

#define pli pair

#define pil pair

#define mp(x,y) make_pair(x,y)

#define lowbit(x) (x&(-x))

#define all(x) (x).begin(),(x).end()

#define fi first

#define se second

const

int inf = 0x3f3f3f3f;

const

long

long linf = 0x3f3f3f3f3f3f3f3fll;

using

namespace

std;

const

double eps = 1e-6;

const ll mod = 1e9+7;

const

int maxn = 1e5+100;

const

int maxe = 1e6+100;

int t,n,m,f;

int dis[105][105];

int vis[105];

int f[10];

struct node;

vector

v[110];

void spfa(int st)}}

}}int ans;

int res;

int vis2[10];

void dfs(int st,int dep)

for(int i=0;iif(vis2[i]==0)

}return ;

}void solve()

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

}int u,v,d;

for(int i=0;icin>>u>>v>>d;

node x,y;

x.len=d;

y.len=d;

x.to=u;

y.to=v;

v[u].pb(y);

v[v].pb(x);

}for(int i=0;icin>>f[i];

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

res=0;

dfs(1,0);

printf("case %d: %d\n",case++,ans);

}}int main()

return

0;}

2.napoléon gym101020e

這個題可以直接用公式,把點轉化到座標系,然後座標系順時針旋轉45°,之後就可以得到res=max(abs(xc-xt),abs(yc-yt)),當然還是要判斷一下不會遇見的情況。

/********************************

auther: jianwei

blog :

********************************/

//#include

#include

#include

#include

#include

#include

#include

#include

#define ll long long

#define pi acos(-1)

#define filein freopen("in.txt","r",stdin)

#define fileout freopen("out.txt","w",stdout)

#define clr(x) memset(x,0,sizeof(x))

#define mem(a,x) memset(a,x,sizeof(a))

#define pb(x) push_back(x)

#define pf(x) push_front(x)

#define for(x,a,b) for(int x=a;x#define rfor(x,a,b) for(int x=a;x>b;x--)

#define for(x,a,b) for(int x=a;x<=b;x++)

#define rfor(x,a,b) for(int x=a;x>=b;x--)

#define pll pair

#define pii pair

#define pli pair

#define pil pair

#define mp(x,y) make_pair(x,y)

#define lowbit(x) (x&(-x))

#define all(x) (x).begin(),(x).end()

#define fi first

#define se second

const

int inf = 0x3f3f3f3f;

const

long

long linf = 0x3f3f3f3f3f3f3f3fll;

using namespace std;

const

double eps = 1e-6;

const ll mod = 1e9+7;

const

int maxn = 1e5+100;

const

int maxe = 1e6+100;

int t,n,xc,xt,yc,yt;

void solve()

int res=max(abs(xc-xt),abs(yc-yt));

printf("%d\n",res);

}}int main()

return

0;}

1月21日訓練賽

把m個同樣的蘋果放在n個同樣的盤子裡,允許有的盤子空著不放,問共有多少種不同的分法?用k表示 5,1,1和1,5,1 是同一種分法。input 第一行是測試資料的數目t 0 t 20 以下每行均包含二個整數m和n,以空格分開。1 m,n 10。output 對輸入的每組資料m和n,用一行輸出相應的k...

2023年1月23日山師訓練賽2

題目鏈結 題意 有 n 個人,每個人會且僅會一種語言.有 m 個電影,電影語言分為 音訊語言 和 字幕語言,且同場電影的音訊語言和字幕語言不同.當人 電影時,如果他會該電影的音訊語言,他會非常高興.當人 電影時,如果他會該電影的字幕語言,他會比較高興.現要求選擇一場電影,使得非常高興的人數最多,若解...

2023年1月27日訓練筆記

今天主要做了做總結,先是自己做總結,然後下午和做數學的同學一塊做了總結和討論,感覺是很好的過程,每個人都更清楚了自己的不足,知道自己接下來該多去看什麼,大家也能更好地統一進度,接下來我要看polya定理的更多題型,莫比烏斯也要進一步理解,然後組合數學之前的東西也要再回顧一下。貼一下部分總結 高斯消元...