标签:比赛总结
链接:click here~~ ,密码:nyist
C - 三角形问题
Description

Input
Output
Sample Input
Sample Output
模拟判断一下,具体看代码吧,脑子有点累了,,手也有点懒了,懒的写写太多没用的东西。。
代码:
#include <stdio.h>
#include <string.h>
#include <iostream>
#include <algorithm>
using namespace std;
__int64 a[100005];
int main()
{
__int64 n,m,i,j;
int t,tot=1;
a[0]=1;
for(i=1; i<100000; i++)
{
a[i]=i+a[i-1];
}
scanf("%d",&t);
while(t--)
{
scanf("%I64d%I64d",&n,&m);
if(n>m){swap(n,m);}
printf("Case %d:",tot++);
if(n==m)
{
printf("No\n");
continue;
}
for(i=0; i<100000; i++)
{
if(n<a[i])
{
break;
}
}
if(n==a[i]-1)
{
if(m==n+i||m==n+i+1)
{
printf("Yes\n");
}
else printf("No\n");
}
else
{
if(n==m-1||n+1+i==m||n+i==m)
{
printf("Yes\n");
}
else printf("No\n");
}
}
return 0;
}D - 排火车Description
于是他们开始玩排火车了。。。
现在假设Apple和Gaga各有N张牌,Apple先出牌。请你给出一轮下来Apple和Gaga各获得的牌数。
Input
第一行T,表示T组测试数据,接下来有T部分。
每部分开头是一个整数N(1 <= N <= 50000),表示Apple和Gaga的牌数。接下来有2行,给出Apple和Gaga的牌的情况。首先给出Apple的牌,有N个整数,第i个整数xi(1 <= xi <= 100000)表示Apple的第i张牌面。其次给出Gaga的牌,格式类似。
Output
Sample Input
Sample Output
Hint
#include <iostream>
#include <stdio.h>
#include <string.h>
#include <math.h>
#include <stack>
#include <algorithm>
using namespace std;
const int N=100005;
const double pi=acos(-1.0);
#define LL __int64
int a[N],b[N],c[N];
int flag[N];
int main()
{
int t,i,j,n,m,tot=1;
scanf("%d",&t);
while(t--)
{
memset(a,0,sizeof(a));
memset(b,0,sizeof(b));
memset(flag,0,sizeof(flag));
scanf("%d",&n);
for(i=1; i<=n; i++) scanf("%d",&a[i]);
for(i=1; i<=n; i++) scanf("%d",&b[i]);
int s1=0,s2=0,ss=1;
for(int i=1; i<=n; i++){
if(flag[a[i]]!=0){
s1++;
int temp=flag[a[i]];
for(int k=flag[a[i]]; k<ss; k++){
flag[c[k]]=0;
s1++;
}
ss=temp;
}
else{
flag[a[i]]=ss;
c[ss++]=a[i];
}
if(flag[b[i]]!=0){
s2++;
int temp=flag[b[i]];
for(int k=flag[b[i]]; k<ss; k++){
flag[c[k]]=0;
s2++;
}
ss=temp;
}
else{
flag[b[i]]=ss;
c[ss++]=b[i];
}
}
printf("Case %d:Apple:%d Gaga:%d\n",tot++,s1,s2);
}
return 0;
}
#个人赛第七场解题总结# (FZU 1881三角形问题 找规律 &&FZU 1884 排火车 模拟)
标签:比赛总结
原文地址:http://blog.csdn.net/u013050857/article/details/44810847