2019山东省赛总结
A-暴力模拟
#include <bits/stdc++.h> using namespace std; typedef long long ll; string day[]={"Monday","Tuesday","Wednesday","Thursday","Friday"}; int t; ll y11,m1,d1,y2,m2,d2; string s1; int main(){cin>>t;while(t--){cin>>y11>>m1>>d1;cin>>s1;cin>>y2>>m2>>d2;ll ans1=y11*360+(m1-1)*30+d1;ll ans2=y2*360+(m2-1)*30+d2;int tt=0;for(int i=0;i<=4;i++){if(s1==day[i]){tt=i;break; }}if(ans1>=ans2){ans1-=ans2;ans1%=5;cout<<day[(tt-ans1+5)%5]<<endl; }else{ans2-=ans1;ans2%=5;cout<<day[(tt+ans2)%5]<<endl;}}return 0; }
View Code
B-dp+组合数
#include<bits/stdc++.h> typedef long long ll; using namespace std; const ll mod=998244353; const int maxn=110; int n,k,m,t; char st[maxn],ed[maxn]; ll dp[maxn][maxn]; ll C[maxn][maxn];void init(){C[0][0]=1;for(int i=1;i<=105;i++){C[i][0]=C[i][i]=1;for(int j=1;j<i;j++)C[i][j]=(C[i-1][j-1]+C[i-1][j])%mod;} }int main(){init();scanf("%d",&t);while(t--){scanf("%d%d%d",&n,&k,&m);scanf("%s",st+1);scanf("%s",ed+1);memset(dp,0,sizeof(dp));int s=0;for(int i=1;i<=n;i++){if(st[i]!=ed[i]) s++;}dp[0][s]=1;for(int i=0;i<k;i++){for(int j=0;j<=n;j++){if(dp[i][j]==0) continue;for(int kk=0;kk<=j;kk++){ //DAODAint k2=m-kk;// bu dao daif(k2>(n-j)) continue;if(k2<0) continue;dp[i+1][(j-kk)+k2]=(dp[i+1][(j-kk)+k2]+dp[i][j]*C[j][kk]%mod*C[n-j][k2]%mod)%mod;} }}printf("%lld\n",dp[k][0]);}return 0; }
View Code
C-傻逼题
#include<bits/stdc++.h> using namespace std; #define maxn 100005 #define ll long long ll t,x,y,n,k,ans; char s[maxn];int main(){cin>>t;while(t--){ans=x=y=0;cin>>n>>k;scanf("%s",s);int len=strlen(s);for(int i=0;i<len;i++){if(s[i]=='R')x++;if(s[i]=='L')x--;if(s[i]=='U')y++;if(s[i]=='D')y--;ans=max(ans,abs(x)+abs(y));}x*=(k-1);y*=(k-1);ans=max(ans,abs(x)+abs(y));for(int i=0;i<len;i++){if(s[i]=='R')x++;if(s[i]=='L')x--;if(s[i]=='U')y++;if(s[i]=='D')y--;ans=max(ans,abs(x)+abs(y));}cout<<ans<<endl;} }
View Code
D-简单图论
#include<bits/stdc++.h> using namespace std; #define ll long long ll n,k,m; char s[200005]; int main(){int t;cin>>t;while(t--){cin>>k;scanf("%s",s);cin>>n>>m;for(int i=1;i<=m;i++){int u,v;scanf("%d%d",&u,&v);}ll tot=(m-n+1)%k;cout<<3-(s[tot]-'0')<<endl;} }
View Code
F-贪心
#include<bits/stdc++.h> using namespace std; #define ll long long int n,a[100005]; int main(){int t;cin>>t;while(t--){cin>>n;ll sum=0;for(int i=1;i<=n;i++)scanf("%d",&a[i]);for(int i=1;i<=n;i++)sum+=a[i];ll p=sum%n,q=sum/n,ans=p;for(int i=1;i<=n;i++)if(a[i]<q)ans+=(q-a[i]);cout<<ans<<endl;} }
View Code
H-贪心
#include<bits/stdc++.h> #include<queue> #define maxn 100005 using namespace std; struct Node{int l,r;bool operator<(Node a)const {return r>a.r;} }p[maxn]; int cmp(Node a,Node b){if(a.l==b.r)return a.r<b.r;return a.l<b.l; }priority_queue<Node>pq;int t,n,m;int main(){cin>>t;while(t--){cin>>n;for(int i=1;i<=n;i++)scanf("%d%d",&p[i].l,&p[i].r);sort(p+1,p+1+n,cmp);while(!pq.empty())pq.pop();// pq.push(p[1]);int id=1,ans=0,pos=p[1].l;while(id<=n){//把所有包含pos的线段加入pq,移动pos if(id>n)break;else pos=p[id].l;while(id<=n && pos<=p[id].r && pos>=p[id].l){pq.push(p[id++]);}while(pq.size() && pos<p[id].l){if(pos<=pq.top().r)ans++,pos++;pq.pop();} }while(pq.size()){if(pos<=pq.top().r)ans++,pos++;pq.pop();}cout<<ans<<endl;} }
View Code
L-拓扑排序
#include <bits/stdc++.h> using namespace std;#define pb push_back #define clr(a,b) memset(a,b,sizeof(a)) #define REP(i,s,t) for(int i=s;i<=t;i++) const int N = 110;vector<int>G1[N],G2[N];bool fp; int n,m,cnt1,cnt2; int in[N],vis[N];inline void init(){fp=false;REP(i,0,n)G1[i].clear();REP(i,0,n)G2[i].clear();clr(in,0); } inline void Toposort(){queue<int>q;REP(i,1,n) if(in[i]==0){q.push(i);}int num=0;while(!q.empty()){int u=q.front();q.pop();num++;for(int i=0;i<G1[u].size();i++){int v=G1[u][i];in[v]--;if(in[v]==0)q.push(v);}}if(num<n)fp=true; } void dfs1(int u){vis[u]=1;for(int i=0;i<G1[u].size();i++){int v=G1[u][i];if(!vis[v]){cnt1++,dfs1(v); //将其正向能够达到的点全部标记 }} } void dfs2(int u){vis[u]=1;for(int i=0;i<G2[u].size();i++){int v=G2[u][i];if(!vis[v]){cnt2++,dfs2(v);}} } int main(){int T;cin>>T;while(T--){init();scanf("%d%d",&n,&m);REP(i,1,m){int u,v;scanf("%d%d",&u,&v);G1[u].pb(v);G2[v].pb(u);in[v]++;if(u==v)fp=true; }Toposort();if(fp){REP(i,1,n)printf("0");puts("");}else{REP(i,1,n){cnt1=cnt2=0;clr(vis,0);dfs1(i);clr(vis,0);dfs2(i); //printf("cnt1=%d,cnt2=%d\n",cnt1,cnt2);if(cnt1<=n/2 && cnt2<=n/2){printf("1");}else printf("0");}puts("");} // if(T)printf(" "); // else puts(""); } }
View Code
转载于:https://www.cnblogs.com/zsben991126/p/10887813.html
2019山东省赛总结相关推荐
- 2019山东省赛记事
第一次打省赛,不得不说真是一波三折,好在队友给力hh 备战时: 省赛前两天和田健师兄跑去了杭州团聚(玩),对于晓龙师兄独自打比赛,我们深感歉意(贼爽),杭州体验很不错(虽然目前为此要吃土很久) 回来以 ...
- 2019山东省赛B - Flipping Game ZOJ - 4114 题解
题意: 初始有n个灯泡,灯泡状态是0和1,.现在有k轮操作,每次改变且仅改变m个的灯的状态,给定n盏灯的初始状态的最终状态,求有多少种解决改变灯的方案满足可以满足题目条件. 思路: 开始写的时候以为是 ...
- The 10th Shandong Provincial Collegiate Programming Contest 2019山东省赛游记+解题报告
比赛结束了几天...这篇博客其实比完就想写了...但是想等补完可做题顺便po上题解... 5.10晚的动车到了济南,没带外套有点凉.酒店还不错. 5.11早上去报道,济南大学好大啊...感觉走了一个世 ...
- ACM-ICPC 2019 山东省省赛总结
五题手快拿银,不然拿铜,甚至不拿,从结果上来看拿了铜牌对第一年的我们来说算好的,也不算太好. 从拿奖后的第一天,我想写这篇博客,但是我忍了下来,那时候被喜悦冲昏了头脑,当 冷静下来,我开始打算写这篇博 ...
- java 分班_J 分班(class)(NYIST 2019年校赛)
J 分班(class)(NYIST 2019年校赛) 内存限制:256MB 时间限制:1s Special Judge: No 题目描述: jsb 是 XX 市第一中学的校长.一轮模拟考试结束后,js ...
- 2019ACM浪潮杯山东省赛参赛总结
emmm是要记录一下生活了呢,不然以后退役了连自己经历过什么都记不住了. 5.11周六,早上5:30分,qdu集训队一行40人(左右)集合登上大巴,前往济南大学参加ACM省赛.上车清点了一下人数,然后 ...
- 2019电赛纸张计数仪分析——————致敬“谢谢惠顾”
2019电赛国赛还没出结果,但我感觉我应该是"成功参与"了. 就不给大家讲讲我们的方案----进行一波反思. 先看传感器我们用的fdc2214,没什么问题.问题出在了主控板上,我现 ...
- 2016第七届ACM山东省赛
"题目说的是输出编号.输出编号!!" "好,改好了." "交." 最后两分钟再一次提交了代码. no - wrong. 奋战到最后一秒 ...
- 2019电赛总结(一)
2019电赛总结(一) 文章目录 2019电赛总结(一) 4 那之前 5 电赛初期 6 电赛中期 7 电赛强化练习 8 电赛预热阶段8月初 9 那以后 4 那之前 2019电赛总结(序) 5 电赛初期 ...
- 2019电赛--OpenMV学习笔记
此文章在我的博客链接:https://sublimerui.top/archives/f10b0e1a.html NOTES:2019电赛结束啦~辛辛苦苦4天后,现已经写成了针对题目的OpenMV总结 ...
最新文章
- 数据库中关于convert的参数学习(转化函数用法)
- centos7下端口映射
- Spring框架:跨域问题之使用@CrossOrigin注解解决失败的原因总结
- 如何在 CentOS 中设置 NTP 服务器
- Call to undefined function imagettftext()解决方法
- Android 系统(119)---Android启动页黑屏及最优解决方案
- 【莫队算法】【权值分块】bzoj3920 Yuuna的礼物
- .NET Core微服务之基于Steeltoe使用Zipkin实现分布式追踪
- 两个音轨合并_怎么合并音频文件 两个音频合并成一个
- Linux基础-虚拟数据优化器VDO
- 微信公众平台开发(2)--微信认证流程图文详解
- FFmpeg初探——基于FFmpeg的图片合成视频
- 计算机专业硕士毕业论文,计算机专业硕士毕业论文致谢范文
- 这是计算机房吗 用英语怎么写,城镇英文怎么说_城镇的英文怎么写 - 沪江英语...
- css html 鼠标手型,鼠标形状,鼠标效果,样式
- EasyUi DataGrid打印问题处理
- python获取文件后运行不了_Python文件执行后一闪而过的解决方案
- 学计算机 有什么好的二本大学排名,二本大学排名
- 诚信通(b2b)信息发布5大核心技巧
- C/C++简单实现文件分块