2016年团体程序设计天梯赛-模拟赛
来源:互联网 发布:淘宝食品流通许可证 编辑:程序博客网 时间:2024/06/07 07:24
L1-1. N个数求和
/* ***********************************************Author :MaltubEmail :xiang578@foxmail.comBlog :htttp://www.xiang578.com************************************************ */#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>//#include <bits/stdc++.h>#define rep(i,a,n) for(int i=a;i<n;i++)#define per(i,a,n) for(int i=n-1;i>=a;i--)#define pb push_backusing namespace std;typedef vector<int> VI;typedef long long ll;const ll mod=1000000007;const int N=2048;int main(){ int n; ll t,ta,a1,tmp; ll a[120],b[120]; scanf("%d",&n); for(int i=0;i<n;i++) { scanf("%lld/%lld",&a[i],&b[i]); } if(n>=1) { t=b[0]; for(int i=1;i<n;i++) t=t*b[i]/__gcd(b[i],t); ta=0; for(int i=0;i<n;i++) { ta+=t/b[i]*a[i]; } } a1=ta/t; ta=ta%t; tmp=__gcd(abs(ta),abs(t)); ta/=tmp; t/=tmp; if(ta<0&&a1!=0) {ta=-ta;} if(a1==0&&ta!=0) { printf("%lld/%lld\n",ta,t); } else if(ta==0) { printf("%lld\n",a1); } else { printf("%lld %lld/%lld\n",a1,ta,t); } return 0;}
L2-2. 树的遍历
/* ***********************************************Author :MaltubEmail :xiang578@foxmail.comBlog :htttp://www.xiang578.top************************************************ */#include <cstdio>#include <cstring>#include <iostream>#include <algorithm>#include <vector>#include <queue>#include <set>#include <map>#include <string>#include <math.h>#include <stdlib.h>#include <time.h>//#include <bits/stdc++.h>#define rep(i,a,n) for(int i=a;i<n;i++)#define per(i,a,n) for(int i=n-1;i>=a;i--)#define pb push_backusing namespace std;typedef vector<int> VI;typedef long long ll;const ll mod=1000000007;const int N=2048;struct node { int n; int l,r;} p[N];int n,a[50],b[50],tot;vector<int>v;int build(int l,int r,int l2,int r2) { if(l>r||l2>r2) return -1; int i,t,now; now=tot; tot++; p[now].n=a[r2]; p[now].l=p[now].r=-1; if(l==r) return now; for(i=l; i<=r; i++) { if(b[i]==a[r2]) break; } t=i-l; p[now].l=build(l,i-1,l2,l2+t-1); p[now].r=build(i+1,r,l2+t,r2-1); return now;}int main() { //freopen("in.txt","r",stdin); //freopen("out.txt","w",stdout); int n,rt,t; scanf("%d",&n); for(int i=0; i<n; i++) scanf("%d",&a[i]); for(int i=0; i<n; i++) scanf("%d",&b[i]); tot=0; build(0,n-1,0,n-1); queue<int>q; v.clear(); q.push(0); while(!q.empty()) { t=q.front(); q.pop(); v.push_back(p[t].n); if(p[t].l!=-1) q.push(p[t].l); if(p[t].r!=-1) q.push(p[t].r); } for(int i=0; i<v.size(); i++) { if(i) printf(" "); printf("%d",v[i]); } printf("\n"); return 0;}
L3-004. 肿瘤诊断
#include<cstdio>#include<cstring>#include<vector>#include<iostream>#include<algorithm>#include<queue>using namespace std;int dx[]= {1,-1,0,0,0,0};int dy[]= {0,0,1,-1,0,0};int dz[]= {0,0,0,0,1,-1};int u[70][1300][130];int a[70][1300][130];struct node { int x,y,z;} p,w;int m,n,l;int bfs(int x,int y,int z) { int num=0; queue<node>q; p.x=x; p.y=y; p.z=z; q.push(p); while(!q.empty()) { w=q.front(); num++; q.pop(); for(int i=0; i<6; i++) { p.x=w.x+dx[i]; p.y=w.y+dy[i]; p.z=w.z+dz[i]; if(p.x<0||p.x>=l||p.y<0||p.y>=m||p.z<0||p.z>=n) continue; if(u[p.x][p.y][p.z]==1||a[p.x][p.y][p.z]==0) continue; u[p.x][p.y][p.z]=1; q.push(p); } } return num;}int main() { int t,ans; scanf("%d%d%d%d",&m,&n,&l,&t); for(int i=0; i<l; i++) for(int j=0; j<m; j++) for(int k=0; k<n; k++) scanf("%d",&a[i][j][k]); memset(u,0,sizeof(u)); ans=0; for(int i=0; i<l; i++) for(int j=0; j<m; j++) for(int k=0; k<n; k++) { if(u[i][j][k]==0&&a[i][j][k]==1) { //printf("%d %d %d\n",i,j,k); u[i][j][k]=1; int num=bfs(i,j,k); if(num>=t) ans+=num; //printf(" %d\n",num); } } printf("%d\n",ans); return 0;}
0 0
- 2016年 团体程序设计天梯赛 - 模拟赛
- 2016年团体程序设计天梯赛-模拟赛
- 团体程序设计天梯赛-模拟赛(2016年)
- 2016年 团体程序设计天梯赛 - 模拟赛
- 2016年 团体程序设计天梯赛 - 初赛
- 团体程序设计天梯赛
- 2016年团体程序设计天梯赛-模拟赛 L3-1. 肿瘤诊断 (三维 BFS)
- 2017年团体程序设计天梯赛
- 2016年团体程序设计天梯赛-初赛 - 到底有多二 - Java
- 2016年团体程序设计天梯赛-初赛 - 大笨钟 - Java
- 2016年团体程序设计天梯赛-初赛 - 谁先倒 - Java
- 2016年团体程序设计天梯赛-初赛 - 奇偶分家 - Java
- 2016年团体程序设计天梯赛-初赛 - 后天 - Java
- 2016年团体程序设计天梯赛-初赛 - 抢红包
- 2016年团体程序设计天梯赛-决赛 L2-1红色警报
- 团体程序设计天梯赛 大笨钟
- 团体程序设计天梯赛L2-002 链表去重(模拟)
- 2017年团体程序设计天梯赛-大区赛总结!
- Spark Worker原理和源码剖析解密
- oracle实例的内存(SGA和PGA)调整,优化之原理和方法
- Java-线程
- python tile
- s5pv210 datasheet_system_memory
- 2016年团体程序设计天梯赛-模拟赛
- 【Scala】响应式编程思想
- HUST——1110雪碧(简单DFS)
- 计数排序
- 利用随机数随机生成指定位数的字符串
- mongodb增删改查基本操作
- 高精度除法(高精除以低精)——一步一步算法篇
- ==和equals方法及其区别
- android开发人员获取sqlite