专栏文章
别样的卡常大战
休闲·娱乐参与者 7已保存评论 7
文章操作
快速查看文章及其快照的属性,并进行相关操作。
- 当前评论
- 7 条
- 当前快照
- 1 份
- 快照标识符
- @miqv447u
- 此快照首次捕获于
- 2025/12/04 11:14 3 个月前
- 此快照最后确认于
- 2025/12/04 11:14 3 个月前
今天上午,wzoi 给我打来电话。他说:“我要加题了,你敢不敢和我举行卡常大战?”我豪爽的答应了:“我当然敢!,今天下午一点在搜城探宝 举行,谁不来谁就是怂货”。
我原本以为我恐吓了 wzoi,wzoi 应该躲在家,不敢找我,可正当这时,我听见了音乐声,原来是我手机响了,一看,竟然是 wzoi 打来的电话,他还真有勇气,我接通了电话,听道电话那头骂道:“小废物,你怎么还不来,再不来你就要体验营排名垫底了了。”我听到他对我的毒骂之后,我回骂道:“我要把你搬题的事挂到孙吧上,帮你炒作一番,你说好不好啊。”
他吓得没再回应我,可是到了下午,wzoi 竟然又给我打电话了,他还真要和我举行卡常大战,于是我按照约定,到达了搜城探宝,可他已经等我很久了。
下午一点,我占今上风,他比不过我,到了第六回合,他就主动了TLE on date1 and date 3了!
下午四点,他开始占上风,我也不甘势弱,我们僵持了一百多个回合,他因为轻敌,被我AC on date1 了。
从那时开始,wzoi 就不轻敌了,他认真研究我的代码,于是他总结出了一套评测机状态。
五点半,我们举行第三局,他使用祖传方案,对我发动猛烈的 10xx ms,我们势均力敌,平分秋色,我们比了 3 分多钟,也没分出胜负。
后来,他不知不觉的睡着了,我趁着这个好机会,一记比原代码还长的火车头,一飞冲天,打的他不敢还手,对他的打击比考试忘记关网还大。

#include<bits/stdc++.h>
using namespace std;
#define LL long long
#define N 105
%:pragma GCC optimize(3)
%:pragma GCC optimize("Ofast")
%:pragma GCC optimize("inline")
%:pragma GCC optimize("-fgcse")
%:pragma GCC optimize("-fgcse-lm")
%:pragma GCC optimize("-fipa-sra")
%:pragma GCC optimize("-ftree-pre")
%:pragma GCC optimize("-ftree-vrp")
%:pragma GCC optimize("-fpeephole2")
%:pragma GCC optimize("-ffast-math")
%:pragma GCC optimize("-fsched-spec")
%:pragma GCC optimize("unroll-loops")
%:pragma GCC optimize("-falign-jumps")
%:pragma GCC optimize("-falign-loops")
%:pragma GCC optimize("-falign-labels")
%:pragma GCC optimize("-fdevirtualize")
%:pragma GCC optimize("-fcaller-saves")
%:pragma GCC optimize("-fcrossjumping")
%:pragma GCC optimize("-fthread-jumps")
%:pragma GCC optimize("-funroll-loops")
%:pragma GCC optimize("-fwhole-program")
%:pragma GCC optimize("-freorder-blocks")
%:pragma GCC optimize("-fschedule-insns")
%:pragma GCC optimize("inline-functions")
%:pragma GCC optimize("-ftree-tail-merge")
%:pragma GCC optimize("-fschedule-insns2")
%:pragma GCC optimize("-fstrict-aliasing")
%:pragma GCC optimize("-fstrict-overflow")
%:pragma GCC optimize("-falign-functions")
%:pragma GCC optimize("-fcse-skip-blocks")
%:pragma GCC optimize("-fcse-follow-jumps")
%:pragma GCC optimize("-fsched-interblock")
%:pragma GCC optimize("-fpartial-inlining")
%:pragma GCC optimize("no-stack-protector")
%:pragma GCC optimize("-freorder-functions")
%:pragma GCC optimize("-findirect-inlining")
%:pragma GCC optimize("-fhoist-adjacent-loads")
%:pragma GCC optimize("-frerun-cse-after-loop")
%:pragma GCC optimize("inline-small-functions")
%:pragma GCC optimize("-finline-small-functions")
%:pragma GCC optimize("-ftree-switch-conversion")
%:pragma GCC optimize("-foptimize-sibling-calls")
%:pragma GCC optimize("-fexpensive-optimizations")
%:pragma GCC optimize("-funsafe-loop-optimizations")
%:pragma GCC optimize("inline-functions-called-once")
%:pragma GCC optimize("-fdelete-null-pointer-checks")
int cnt,h[2100],f[2100],q,n,ans,w[210],k;
int vis2[210];
bool vis[50];
struct E{
int t,nxt,w;
}e[2100];
void add(int s,int t){
e[++cnt].t=t;
e[cnt].nxt=h[s];
h[s]=cnt;
}
void dfs(int u,int tot,int key1,bool key2,bool isit){//,int step
if(u==0) return ;
// if(step>20) return ;
ans=max(ans,tot);
if(key1==0) {
if(key2==1)
for(int i=1;i<=n;i++){
if(vis[i]==0){
vis[i]=1;
dfs(i,tot+w[i],key1,0,0);//,step+1
vis[i]=0;
}
}
return ;
}
for(int i=h[u];i;i=e[i].nxt){
int v=e[i].t;
if(vis[v]==1)continue;
vis[v]=1;
if(key1!=0)
dfs(v,tot+w[v],key1-1,key2,0);//,step+1
vis[v]=0;
}
if(isit==0&&key2==1)
for(int i=1;i<=n;i++){
if(vis[i]==0){
vis[i]=1;
dfs(i,tot+w[i],key1,0,0);//,step+1
vis[i]=0;
}
}
dfs(f[u],tot,key1-(1-vis[f[u]]),key2,1);
}
namespace FastIO{
char BUF[1<<21],*P1=BUF;
const char *P2=BUF+sizeof(BUF);
#define putchar(a) (P1==P2&&put_buf,*P1++=(a))
#define put_buf (fwrite(BUF,1,P1-BUF,stdout)&&(P1=BUF))
#define exit put_buf;exit
char buf[1<<21],*p1=buf,*p2=buf;
#define getchar() (p1==p2&&(p1=buf,p2=(p1+fread(buf,1,1<<21,stdin)))==p1?EOF:*p1++)
template<typename T>inline T read(){T x=0,w=0;char ch=getchar();while(ch<'0'||ch>'9')w|=(ch=='-'),ch=getchar();while('0'<=ch&&ch<='9')x=x*10+(ch^'0'),ch=getchar();return w?-x:x;}
template<typename T>inline void write(T x){if(!x)return;write<T>(x/10),putchar((x%10)^'0');}
template<typename T>inline void print(T x){if(x>0)write<T>(x);else if(x<0)putchar('-'),write<T>(-x);else putchar('0');}
template<typename T>inline void print(T x,char en){print<T>(x),putchar(en);}
template<typename T>inline void print(string s){for(int i=0;i<s.size();i++)putchar(s[i]);}
}using namespace FastIO;
#define read read<int>
#define print print<int>
int main(){
//ios::sync_with_stdio(false),cin.tie(0),cout.tie(0);
n=read();k=read();
for(int i=1,u,v;i<n;i++){
u=read();v=read();
add(u,v);
f[v]=u;
}
for(int i=1;i<=n;i++) w[i]=read();
add(n+1,1);
dfs(n+1,0,k,1,0);//,0
print(ans);
exit(0);
}
(不是正解)
相关推荐
评论
共 7 条评论,欢迎与作者交流。
正在加载评论...