前言
重返纪中之日,又是被虐之时
成绩
JJJ表示初中,HHH表示高中后面加的是几年级
RankRankRank | PersonPersonPerson | ScoreScoreScore | AAA | BBB | CCC |
---|---|---|---|---|---|
666 | (H−1)HJW(H-1)HJW(H−1)HJW | 191191191 | 100100100 | 919191 | 000 |
999 | (J−2)WYC(J-2)WYC(J−2)WYC | 151151151 | 606060 | 909090 | 000 |
151515 | (J−2)HJQ(J-2)HJQ(J−2)HJQ | 110110110 | 101010 | 100100100 | 000 |
171717 | (J−3)WHF(J-3)WHF(J−3)WHF | 100100100 | 100100100 | 000 | 000 |
282828 | (J−2)XXY(J-2)XXY(J−2)XXY | 505050 | 505050 | 000 | 000 |
303030 | (J−2)LRZ(J-2)LRZ(J−2)LRZ | 464646 | 101010 | 363636 | 000 |
313131 | (H−1)TRX(H-1)TRX(H−1)TRX | 404040 | 404040 | 000 | 000 |
313131 | (J−2)ZYC(J-2)ZYC(J−2)ZYC | 404040 | 404040 | 000 | 000 |
363636 | (J−2)HZB(J-2)HZB(J−2)HZB | 292929 | 202020 | 999 | 000 |
373737 | (J−2)XJQ(J-2)XJQ(J−2)XJQ | 272727 | 000 | 272727 | 000 |
393939 | (J−2)LW(J-2)LW(J−2)LW | 101010 | 101010 | 000 | 000 |
434343 | (J−3)QYH(J-3)QYH(J−3)QYH | 000 | 000 | 000 | 000 |
(分数已经四舍五入了)
正题
T1:jzoj1764−T1:jzoj1764-T1:jzoj1764−游戏【dp,dfsdp,dfsdp,dfs】
链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/90315832
T2:jzoj1758−T2:jzoj1758-T2:jzoj1758−过河【dpdpdp】
链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/90315903
T3:jzoj4669−[NOIP2016T3:jzoj4669-[NOIP2016T3:jzoj4669−[NOIP2016提高AAA组模拟7.19]7.19]7.19]弄提纲【LCA,KMP,LCA,KMP,LCA,KMP,字符串】
链接:
https://blog.csdn.net/Mr_wuyongcong/article/details/90316015
someofcodessome\ of\ codessome of codes
T1 60分code
#include<cstdio>
#include<algorithm>
#include<cstring>
using namespace std;
const int N=110;
int n,m,Big,K,a[N],f[N][N];
bool flag,v[N][N];
void dfs(int x,int num)
{int A=f[1][x];if(num==K){flag=1;for(int i=1;i<=n;i++)printf("%d\n",a[i]);return;}if(x>n||num>K||flag) return;if(A==0){dfs(x+1,num);return;}for(int i=0;i<=Big;i++){if(num+i*A>K) break;a[x]=i;dfs(x+1,num+i*A);}
}
int main()
{scanf("%d%d%d%d",&n,&m,&Big,&K);for(int i=1;i<=m;i++){int x,y;scanf("%d%d",&x,&y);v[x][y]=1;}f[n][1]=1;for(int i=n-1;i>=1;i--)for(int j=1;j<=n;j++){f[i][j]=f[i+1][j]+f[i+1][j-1];if(f[i+1][j]==-1||f[i+1][j-1]==-1)f[i][j]=-1;if(f[i][j]>K) f[i][j]=-1;if(v[i][j]) f[i][j]=0;}for(int i=1;i<=n;i++)if(f[1][i]==-1) f[1][i]=0;dfs(1,0);
}
T2 90.9分code
#include<cstdio>
#include<cstring>
#include<algorithm>
using namespace std;
const int N=1100;
int G,t,a[N],b[N],f[2][N],n;
int main()
{scanf("%d",&G);while(G--){scanf("%d",&n);for(int i=1;i<=n;i++)scanf("%d%d",&a[i],&b[i]);memset(f,0,sizeof(f));t=1;f[1][0]=1;n++;a[0]=1;a[n]=1;bool flag;while(!f[t&1][n]){flag=1;for(int i=0;i<=n;i++){if(!f[t&1][i]) continue;flag=0;for(int j=-5;j<=5;j++){int z=i+j;if(z<0||z>n) continue;if((t-1)%(a[z]+b[z])+1>a[z]) continue;f[~t&1][z]=1;}}if(t>5000000/n) flag=1;if(flag) break;memset(f[t&1],0,sizeof(f[t&1]));t++;}if(flag) printf("No\n");else printf("%d\n",t-1);}
}
总结
看题期望分40+0+0=4040+0+0=4040+0+0=40
做题期望分90+50+0=14090+50+0=14090+50+0=140
实际の分数60+90.9(???)+0=150.960+90.9(???)+0=150.960+90.9(???)+0=150.9
开始看所有题目都没有思路,然后T1T1T1推了一会开始写dpdpdp写了半天各种出锅就该去写dfsdfsdfs了,发现好像似乎可以过?????????。然后T2T2T2写了个暴力结果就是正解?????????,T3T3T3题目开始出了锅然后没鸟它,后来改回去了也没看。
就是死刚T1T1T1
:D\color{green}\texttt{:D}:D
最后的最后
我了呀太菜\color{white}\huge\texttt{我}_{\small\texttt{了}^{\large\texttt{呀}}}^{\large\texttt{太}_{\small\texttt{菜}}}我了呀太菜