前言
题目还好,都是装作很难,其实都不考高深算法。
某位A组dalao来水了个AK。
而且题号都很诡异
成绩
RankRankRank是有算别人的
RankRankRank | PersonPersonPerson | ScoreScoreScore | AAA | BBB | CCC |
---|---|---|---|---|---|
333 | 2017myself2017myself2017myself | 220220220 | 100100100 | 100100100 | 202020 |
666 | 2017xjq2017xjq2017xjq | 200200200 | 100100100 | 100100100 | 000 |
666 | 2017xxy2017xxy2017xxy | 200200200 | 100100100 | 100100100 | 000 |
141414 | 2017lrz2017lrz2017lrz | 140140140 | 100100100 | 404040 | 000 |
141414 | 2017hzb2017hzb2017hzb | 140140140 | 100100100 | 404040 | 000 |
202020 | 2017zyc2017zyc2017zyc | 120120120 | 100100100 | 000 | 202020 |
202020 | 2017hjq2017hjq2017hjq | 120120120 | 100100100 | 202020 | 000 |
323232 | 2017lw2017lw2017lw | 808080 | 808080 | 000 | 000 |
正题
T1:jzoj100046−T1:jzoj100046-T1:jzoj100046−收集卡片【暴力】
快乐签到题
博客链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/85014087
T2:jzoj100047−T2:jzoj100047-T2:jzoj100047−基因变异【位运算,bfs,bfs,bfs】
竟然也有位运算快乐题
博客链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/85014177
T3:jzoj100044−abcdT3:jzoj100044-abcdT3:jzoj100044−abcd【多重背包,,,二进制压缩,dp,dp,dp】
进击の多重背包
博客链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/85014240
someofcodesome\ of\ codesome of code
T1 暴力
#include<cstdio>
#include<algorithm>
#include<cstring>
#define N 500010
#define Z 60
using namespace std;
int n,ans,num,k;
char c,a[N];
bool v[Z];
int p(char x)
{if(x>='a') return x-'a'+27;else return x-'A'+1;
}
int main()
{freopen("data.in","r",stdin);freopen("data.out","w",stdout);scanf("%d",&n);c=getchar();for(int i=1;i<=n;i++){a[i]=getchar();if(!v[p(a[i])]) num++;v[p(a[i])]=true;}ans=2147483647;for(int i=1;i<=n;i++){memset(v,0,sizeof(v));k=0;for(int j=i;j<=n;j++){if(!v[p(a[j])]) k++;v[p(a[j])]=true;if(k==num){ans=min(ans,j-i+1);break;}}}printf("%d",ans);
}
T1 随机数据
#include<cstdio>
#include<cstdlib>
#include<ctime>
using namespace std;
int main()
{freopen("data.in","w",stdout);srand(time(0));printf("500000\n");for(int i=1;i<=500000;i++){if(rand()%2) printf("%c",'A'+rand()%26);else printf("%c",'a'+rand()%26);}
}
T1 对拍
#include<windows.h>
#include<cstdio>
using namespace std;
int main()
{while(1){system("data.exe");system("BL.exe");system("MPY.exe");if(system("fc data.out data.ans")) return 0;}
}
T2 随机数据
#include<cstdio>
#include<cstdlib>
#include<ctime>
#define random(x) rand()*rand()%x
using namespace std;
int main()
{srand(time(0));freopen("data.in","w",stdout);printf("20 100000\n");for(int i=1;i<=20;i++)printf("%d ",random(1000001));printf("\n");for(int i=1;i<=100000;i++)printf("%d %d\n",random(1000001),random(1000001));
}
T3 暴力
#include<cstdio>
#include<algorithm>
using namespace std;
int n,ans,a[210],b[210],c[210],d[210];
void dfs(int dep,int sc,int sum)
{if(dep>n&&sc==0)ans=max(ans,sum);if(dep>n) return;for(int i=a[dep];i<=b[dep];i++)dfs(dep+1,sc+i*c[dep],sum+i*d[dep]);
}
int main()
{freopen("data.in","r",stdin);freopen("data.out","w",stdout);scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d%d%d%d",&a[i],&b[i],&c[i],&d[i]);ans=-2147483647;dfs(1,0,0);printf("%d",ans);
}
T3 随机数据
#include<cstdio>
#include<cstdlib>
#include<ctime>
#define random(x) rand()*rand()%x
using namespace std;
int main()
{srand(time(0));freopen("data.in","w",stdout);printf("200\n");for(int i=1;i<=200;i++)printf("%d %d %d %d\n",-25,25,1+random(20),1+random(100000));
}
T3 对拍
#include<windows.h>
#include<cstdio>
using namespace std;
int main()
{while(1){system("data.exe");system("BL.exe");system("abcd.exe");if(system("fc data.out data.ans")) return 0;}
}
T3 60分code
#pragma GCC optimize(2)
%: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")
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int ac=100000,N=260;
int n,a[N],b[N],c[N],d[N],f[2][ac*2+10];
int main()
{scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d%d%d%d",&a[i],&b[i],&c[i],&d[i]);for(int j=0;j<=2*ac;j++)f[0][j]=-2147483647/2;f[0][ac]=0;for(int i=1;i<=n;i++){for(int j=0;j<=2*ac;j++)f[i&1][j]=-2147483647/2;for(int j=0;j<=2*ac;j++)for(int k=a[i];k<=b[i];k++)if(j+k*c[i]<=2*ac&&j+k*c[i]>=0){f[i&1][j+k*c[i]]=max(f[i&1][j+k*c[i]],f[(i-1)&1][j]+k*d[i]);}}printf("%d",f[n&1][ac]);
}
尾声
之前第3题拿到过60分,结果又交了一个20分的QAQ。