2015年江西理工大学C语言程序设计竞赛(初级组)
JankTao相亲记
解法:排序
#include<stdio.h>
#include<string.h>
#include<iostream>
#include<math.h>
#include<map>
#include<set>
#include<vector>
#include<algorithm>
using namespace std;
const double INF = 1e20;
const double pi = acos(-1.);
int main()
{
int t;
int a[100];
while(cin>>t)
{
while(t--)
{
for(int i=0;i<11;i++)
{
cin>>a[i];
}
sort(a,a+11);
printf("%d\n",a[9]);
}
}
return 0;
}
David的沙漠之路
解法:贪心,尽量往最大的距离走,加上它经历过的加油站中最大的那个,模拟这个过程需要考虑很多情况
#include <iostream>
#include <stdio.h>
#include <queue>
using namespace std;
struct cmp
{
bool operator ()(int &a,int &b)
{
return a<b;
}
};
struct node
{
int x,y;
} e[1005];
int main()
{
priority_queue<int,vector<int>,cmp>que;
int T;
scanf("%d",&T);
while(T--)
{
int n,l,s,x,y,cnt=0,flag=0,f=0;
scanf("%d%d%d",&n,&l,&s);
for(int i=0; i<n; i++)
{
scanf("%d%d",&e[i].x,&e[i].y);
}
e[n].x=0,e[n].y=l;
for(int i=0; i<=n; i++,f=0)
{
x=e[i].x,y=e[i].y;
if(y<=s)
{
que.push(x);
f=1;
//最长可以横跨多少加油站,把他们放在队列里
}
while(y>=s)
{
if(s>=l) break;
if(!f && s==y)
{
que.push(x);
f=1;
//没有横跨,刚刚好到达
}
if(que.empty())
{
printf("TJ\n");
flag=1;
break;
}
int xx=que.top();//取最近的加油站
que.pop();
s+=xx;
cnt++;
}
if(!f) que.push(x);
if(s>=l)
{
printf("%d\n",cnt);
flag=1;
break;
}
if(flag) break;
}
if(!flag) printf("TJ\n");
while(!que.empty()) que.pop();
}
return 0;
}
TJ的文件系统
解法:字符串处理
#include<stdio.h>
//#include<bits/stdc++.h>
#include<string.h>
#include<iostream>
#include<math.h>
#include<sstream>
#include<set>
#include<queue>
#include<vector>
#include<algorithm>
#include<limits.h>
#define inf 0x3fffffff
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
using namespace std;
const int maxn = 22;
int main()
{
int t;
int n;
int i;
int j;
string s,ss;
while(cin>>t)
{
while(t--)
{
string sss="";
int ans;
cin>>n>>s;
for(i=0;i<n;i++)
{
string sss="";
cin>>ss;
ans=ss.find(".");
// cout<<ans<<endl;
for(j=ans+1;j<ss.length();j++)
{
sss+=ss[j];
}
// cout<<sss<<endl;
if(sss==s)
{
cout<<ss<<endl;
}
}
}
} return 0;
}
握手定理
解法:水题
#include <stdio.h>
int main()
{
int SEQ, ACK1, ACK2, T;
scanf("%d", &T);
while(T--)
{
scanf("%d %d %d", &SEQ, &ACK1, &ACK2);
if((ACK1 == SEQ + 1) && (ACK2 == ACK1 + 1))
{
printf("QWN3213\n");
}
else
printf("TJ\n");
}
return 0;
}
Alice AND Bob
解法:模拟
#include<stdio.h>
//#include<bits/stdc++.h>
#include<string.h>
#include<iostream>
#include<math.h>
#include<sstream>
#include<set>
#include<queue>
#include<vector>
#include<algorithm>
#include<limits.h>
#define inf 0x3fffffff
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
using namespace std;
int a[100000],b[100000],c[100000];
int main()
{
int t;
int i,j;
int n,m;
int x,y;
int k;
cin>>t;
while(t--)
{
k=0;
cin>>n>>m;
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
for(i=0;i<n;i++)
{
cin>>x;
a[x]++;
}
for(i=0;i<m;i++)
{
cin>>y;
b[y]++;
}
for(i=0;i<100000;i++)
{
if(a[i]&&b[i])
c[k++]=i;
}
for(i=0;i<k;i++)
{
if(i==0)
{
printf("%d",c[i]);
}
else
{
printf(" %d",c[i]);
}
}
cout<<endl;
}
return 0;
}
建群数据
解法:字符串处理时间
#include<stdio.h>
//#include<bits/stdc++.h>
#include<string.h>
#include<iostream>
#include<math.h>
#include<sstream>
#include<set>
#include<queue>
#include<vector>
#include<algorithm>
#include<limits.h>
#define inf 0x3fffffff
#define lson l,m,rt<<1
#define rson m+1,r,rt<<1|1
#define LL long long
using namespace std;
struct P
{
int number;
int hhmmss;
}hehe[100000];
int cmp(P a,P b)
{
if(a.number==b.number)
return a.hhmmss<b.hhmmss;
else
return a.number<b.number;
}
string s,ss,sss,ssss;
string sssss;
int t,n;
int a;
int i,j;
int ans;
int poi;
int num;
int main()
{ cin>>t;
while(t--)
{
poi=1;
cin>>n;
for(i=0;i<n;i++)
{
cin>>a>>s;
hehe[i].number=a;
ss=s.substr(0,2);
sss=s.substr(2,2);
ssss=s.substr(4,2);
// cout<<ss<<" "<<sss<<" "<<ssss<<endl;
hehe[i].hhmmss=((ss[0]-'0')*10+(ss[1]-'0')*1)*3600+((sss[0]-'0')*10+(sss[1]-'0'))*60+((ssss[0]-'0')*10+(ssss[1]-'0'));
}
cin>>sssss;
ss=sssss.substr(0,2);
sss=sssss.substr(2,2);
ssss=sssss.substr(4,2);
ans=((ss[0]-'0')*10+(ss[1]-'0'))*3600+((sss[0]-'0')*10+(sss[1]-'0'))*60+((ssss[0]-'0')*10+(ssss[1]-'0'));
sort(hehe,hehe+n,cmp);
num=hehe[0].hhmmss;
for(int i=1;i<n;i++)
{
if(hehe[i].number!= hehe[i-1].number||hehe[i].hhmmss-num>ans)
{
poi++;
num=hehe[i].hhmmss;
}
}
printf("%d\n",poi);
}
return 0;
}
2015年江西理工大学C语言程序设计竞赛(初级组)的更多相关文章
- 2018年江西理工大学C语言程序设计竞赛(初级组)一
C语言竞赛初级组第一.二场答案:https://www.cnblogs.com/xingkongyihao/p/10046918.html A: 逆序对 时间限制: 1 s 内存限制: ...
- 2017年江西理工大学C语言程序设计竞赛(初级组)
问题 A: Petr的盒子(初) #include <iostream> #include <stdio.h> #include <algorithm> using ...
- 2015年江西理工大学C语言程序设计竞赛(高级组)
A 解法:DP+二分 dp[i]=max(dp[i],dp[j]+p[i].v)(i>j) dp[i]表示建立i点之后能够获得的最大值 int n,M; struct node { int l, ...
- 2014江西理工大学C语言程序设计竞赛高级组题解
1001 Beautiful Palindrome Number 枚举回文数字前半部分,然后判断该数字是否满足,复杂度为O(sqrt(n))! 1002 Recovery Sequence 本题的核 ...
- 2017年江西理工大学C语言程序设计竞赛(高级组)
问题 A: 求近似值 #include <stdio.h> #include <time.h> #include <stdlib.h> using namespac ...
- 2018年江西理工大学C语言程序设计竞赛(高级组) 三角平方数
题目描述 三角数:形如图a,圆点摆放成等边三角形的数字,则为三角数. (图a) 平方数:形如图b,小方块摆放成正方形的数字,则为平方数. (图b) 那么如果一个数字既是三角形数又是平方数,则称为三角平 ...
- 2018年江西理工大学C语言程序设计竞赛高级组部分题解
B Interesting paths 考察范围:组合数学 此题是机器人走方格的变种,n*m的网格,从(1,1)走到(n,m),首先可以明确,水平要走m-1格,竖直要走n-1格,则走到目的地的任意一条 ...
- 2014江西理工大学C语言程序竞赛初级组
坐公交 解法:略 #include<stdio.h> #include<string> #include<iostream> #include<math.h& ...
- 2016年江西理工大学C语言程序设计竞赛(高级组)
问题 A: jxust 解法:争议的问题(是输入整行还是输入字符串),这里倾向输入字符串,然后判断是否含有jxust就行 #include<bits/stdc++.h> using nam ...
随机推荐
- poj1703 Find them, Catch them 并查集
poj(1703) Find them, Catch them Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 26992 ...
- [转] HashMap和HashSet的区别
HashMap和HashSet的区别是Java面试中最常被问到的问题.如果没有涉及到Collection框架以及多线程的面试,可以说是不完整.而Collection框架的问题不涉及到HashSet和H ...
- CentOS 5.5 Nginx+JDK+MySQL+Tomcat(jsp)成功安装案例
在CentOS 5.5中安装Nginx+jdk+mysql+tomcat是非常容易的.只需yum安装环境包和nginx.解压安装jdk和tomcat.配置profile文件.server.xml和ng ...
- git批量删除分支
要删除本地,首先要考虑以下三点 列出所有本地分支 搜索目标分支如:所有含有'dev'的分支 将搜索出的结果传给删除函数 所以我们可以得到: git br |grep 'dev' |xargs git ...
- RMAN备份演练进阶篇
前篇介绍了通过rman进行各种备份,进阶篇则主要是rman的一些功能扩展和增加功能,利用前篇你已经完全可以完成数据库的备份,而通过本篇你可以更好更方便的完成数据库的备份. 一.建立增量备份 如果数据库 ...
- PAT乙级 1024. 科学计数法 (20)
1024. 科学计数法 (20) 时间限制 100 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 HOU, Qiming 科学计数法是科学家用来表示很 ...
- java 网络编程(四)----UDP进阶篇聊天小程序
设计要求:单线程模式,客户端只发送数据,数据的来源为键盘录入,服务器端只接收数据,当客户端发送886的时候,客户端和服务器端都退出. 1. 发送端: public class Send impleme ...
- 一、Java基础--01
Java基础测试题分析 第一题是关于基本的算法知识,这个很有必要去掌握以下,在学校也经常听老师们说找工作比试面试会出一些这方面的知识,我拿到的第一题是关于排序的,虽然很简单,但是我还是要提醒一下基础不 ...
- python使用装饰器捕获异常
可以编写一个通用的捕获异常的装饰器, 当程序发生异常时可以继续执行后续动作. 尤其适合于使用大量断言的验证性程序. 装饰器的实现原理使用了回调技术. 如下所示, robust 是一个装饰器. 当在普通 ...
- 关于web开发前端h5框架的选择
关于web开发前端h5框架的选择 看了很多移动版框架都是基于app混合式开发的,不是单独h5网站的基于h5开发的web框架从组件丰富度,兼容性,相关教程来说bootstrap还是最好的react和vu ...