A. Heads or Tails
第一题 比较简单,我直接发代码了。
代码:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int main(){
int i, j, x, y, a, b, ans = 0;
scanf("%d%d%d%d",&x,&y,&a,&b);
for(i = a; i <= x; i++)
for(j = b; j < i && j <= y; j++)
ans++;
printf("%d\n",ans);
for(i = a; i <= x; i++)
for(j = b; j < i && j <= y; j++)
printf("%d %d\n",i, j);
return 0;
}
B. Big Segment
第二题同样是简单题,同样只发代码
代码:
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
const int maxn = 200000;
struct Segment{
int l, r;
};
Segment seg[maxn];
int main(){
int i, j, l, r, n;
scanf("%d",&n);
for(i = 0; i < n; i++)
scanf("%d%d",&seg[i].l,&seg[i].r);
l = seg[0].l;
r = seg[0].r;
for(i = 1; i < n; i++){
if(l > seg[i].l) l = seg[i].l;
if(r < seg[i].r) r = seg[i].r;
}
int num = -1;
for(i = 0; i < n; i++)
if(l == seg[i].l && r == seg[i].r){
num = i+1;
break;
}
printf("%d\n",num);
return 0;
}