CodeForces #322 (div2)
来源:互联网 发布:linux grep命令与管道 编辑:程序博客网 时间:2024/05/24 00:36
A. Vasya the Hipster
随便模拟一下。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<queue>#include<map>#include<vector>#include<set>#include<ctime>#define LL long long#define db double#define EPS 1e-1#define inf 1e16#define pa pair<int,int>using namespace std;int main(){ int a,b;scanf("%d%d",&a,&b);int ans1=max(a,b)-min(a,b);int ans2=min(a,b);int ans;if (ans1%2==0) ans1=ans1/2;else ans1=(ans1-1)/2;printf("%d %d\n",ans2,ans1);}
B. Luxurious Houses
倒着扫一遍,记录一下最大值。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<queue>#include<map>#include<vector>#include<set>#include<ctime>#define LL long long#define db double#define EPS 1e-1#define inf 1e16#define pa pair<int,int>using namespace std;LL a[100000],ans[100000];int main(){ int n; scanf("%d",&n); for (int i=0;i<n;i++){ scanf("%d",&a[i]); } LL maxi=a[n-1]; ans[n-1]=0; for(int i=n-2;i>=0;i--){ans[i] = max(maxi-a[i]+1,(LL)0);maxi=max(maxi,a[i]);}for (int i=0;i<n-1;i++) printf("%I64d ",ans[i]);printf("0");return 0;}
C. Developing Skills
贪心搞一下,先按照差多少能补进位,尽量去补,如果最后多了就随便补。
#include<cstdio>#include<cstring>#include<cmath>#include<algorithm>#include<queue>#include<map>#include<vector>#include<set>#include<ctime>#define LL long long#define db double#define EPS 1e-1#define inf 1e16#define pa pair<int,int>using namespace std;int n,m,ans;int a[100010];inline bool cmp(int a,int b){ int x=a%10,y=b%10;x=10-x;y=10-y; if (x<y)return 1; if (y<x)return 0; return a<b;}int main(){scanf("%d%d",&n,&m);for (int i=1;i<=n;i++) scanf("%d",&a[i]),ans+=a[i]/10;sort(a+1,a+n+1,cmp);for (int i=1;i<=n;i++){if (a[i]==100) continue;int x=a[i]%10; x=10-x;if (x>m) break;m-=x; a[i]+=x; ans++;}sort(a+1,a+n+1);for (int i=1;i<=n;i++)while (a[i]<=90&&m>=10)ans++,a[i]+=10,m-=10;printf("%d\n",ans);}
D Three Logos
暴力枚举。
#include<bits/stdc++.h>using namespace std;int main(){ int x1,y1,x2,y2,x3,y3; while(scanf("%d%d%d%d%d%d",&x1,&y1,&x2,&y2,&x3,&y3)!=EOF){ int area=x1*y1+x2*y2+x3*y3; int k=sqrt(area); if(k*k==area){ if(y1==k) swap(x1,y1); if(y2==k) swap(x2,y2); if(y3==k) swap(x3,y3); if(x1==k&&x2==k&&x3==k){ printf("%d\n",k); for(int i=1;i<=y1;i++){ for(int j=1;j<=x1;j++) printf("A"); printf("\n"); } for(int i=1;i<=y2;i++){ for(int j=1;j<=x2;j++) printf("B"); printf("\n"); } for(int i=1;i<=y3;i++){ for(int j=1;j<=x3;j++) printf("C"); printf("\n"); } continue; } int sd=0; if(x2==k){ sd=1; swap(x1,x2); swap(y1,y2); } if(x3==k){ sd=2; swap(x1,x3); swap(y1,y3); } if(y2==k-y1){ swap(x2,y2); } if(y3==k-y1){ swap(x3,y3); } if(x2==k-y1&&x3==k-y1&&y2+y3==k){ printf("%d\n",k); for(int i=1;i<=y1;i++){ for(int j=1;j<=x1;j++) printf("%c",'A'+sd); printf("\n"); } if(sd==0){ for(int i=1;i<=x2;i++){ for(int j=1;j<=y2;j++) printf("%c",'B'); for(int j=1;j<=y3;j++) printf("%c",'C'); printf("\n"); } } if(sd==1){ for(int i=1;i<=x2;i++){ for(int j=1;j<=y2;j++) printf("%c",'A'); for(int j=1;j<=y3;j++) printf("%c",'C'); printf("\n"); } } if(sd==2){ for(int i=1;i<=x2;i++){ for(int j=1;j<=y2;j++) printf("%c",'B'); for(int j=1;j<=y3;j++) printf("%c",'A'); printf("\n"); } } continue; } else{ printf("-1\n"); } } else{ printf("-1\n"); } } return 0;}
0 0
- CodeForces #322 (div2)
- codeforces#322 div2
- Codeforces #322 div2 ABCDF
- python codeforces 322 div2 C
- codeforces round#322 div2 F (树形背包)
- codeforces #78 div2 C
- codeforces 83div2
- 【codeforces #91 div2】
- codeforces 105 div2 A
- codeforces 105 div2 B
- CodeForces #120 DIV2
- Codeforces---125--div2--总结
- Codeforces-127-div2
- codeforces-div2-128
- codeforces-div2-134
- Codeforces 135 div2
- codeforces 137 div2
- Codeforces #137 div2
- 电脑中常用的快捷键
- Framework of Android: retrofit (2.0)
- centos7下安装phpcms遇到不可写的问题
- Xcode自动注释插件:VVDocumenter-Xcode
- POJ - 2456 Aggressive cows(二分查找)
- CodeForces #322 (div2)
- C语言冒泡排序法分析及代码实现
- IIS7.0设置404错误页,返回500状态码
- 解题报告 之 CodeForces 581D Three Logos
- Android之BaseAdapter—convertView回收机制与动态控件响应
- **LeetCode-Lowest Common Ancestor of a Binary Tree
- hiho一下 第六十周
- SQLServer数据库的导入详细图解
- 使用BootStrap进行响应式布局案例