标签:pre space eof ios gif one logs namespace cout
背景
Czy 找到宝藏获得屠龙宝刀和神秘秘籍!现在他要去找经常ntr 他的Jmars 报仇……
题目描述
Czy 学会了一招“堕天一击”,他对一个地点发动堕天一击,地面上就会留下一个很
大的圆坑。圆坑的周围一圈能量太过庞大,因此无法通过。所以每次czy 发动技能都会把
地面分割。Jmars 拥有好大好大的土地,几十眼都望不到头,所以可以假设土地的大小是
无限大。现在czy 对他发动了猛烈的攻击,他想知道在泽宇攻击之后他的土地被切成几份
了?
Czy 毕竟很虚,因此圆心都在x 坐标轴上。另外,保证所有圆两两之间不会相交。
格式
输入第一行为整数n,表示czy 放了n 次堕天一击。
接下来n 行,每行两个整数x[i],r[i]。表示在坐标(x[i] , 0)放了一次堕天一击,半
径为r[i]。
输出一行,表示地面被分割成几块。
样例输入
4
7 5
-9 11
11 9
0 20
样例输出
6
数据范围
对于30%数据,n<=5000
对于100%数据,1<=n<=300000,-10^9<=x[i]<=10^9,1<=r[i]<=10^9.
solution:
这道题我打的真是暴力,A了.........
1 #include<cstdio> 2 #include<cstring> 3 #include<iostream> 4 #include<cmath> 5 #include<algorithm> 6 #include<vector> 7 #include<queue> 8 #define ll long long 9 #define mem(a,b) memset(a,b,sizeof(a)) 10 #define dd double 11 using namespace std; 12 const int N=300005; 13 /*int read() 14 { 15 int ans=0;char q=getchar(); 16 while(q<‘0‘||q>‘9‘)q=getchar(); 17 while(q>=‘0‘&&q<=‘9‘){ans=ans*10+q-‘0‘;q=getchar();} 18 return ans; 19 }*/ 20 struct son 21 { 22 int l,r; 23 }; 24 son ji[N]; 25 26 bool ok(son a,son b) 27 { 28 if(a.l==b.l)return a.r>b.r; 29 return a.l<b.l; 30 } 31 32 int n,ans; 33 int u,o; 34 35 void out11() 36 { 37 printf("\n\n"); 38 for(int i=1;i<=n;++i) 39 printf("%d %d\n",ji[i].l,ji[i].r); 40 printf("\n\n"); 41 } 42 43 int main(){ 44 //freopen("god.in","r",stdin); 45 //freopen("god.out","w",stdout); 46 cin>>n; 47 for(int i=1;i<=n;++i) 48 { 49 //u=read();o=read(); 50 cin>>u>>o; 51 ji[i].l=u-o; 52 ji[i].r=u+o; 53 } 54 55 //out11(); 56 57 sort(ji+1,ji+1+n,ok); 58 59 //out11(); 60 61 ans=1; 62 63 64 //printf("sss%d %d\n",ji[1].l,ji[1].r); 65 //printf("sss%d %d\n",ji[2].l,ji[2].r); 66 67 for(int i=1;i<=n;++i) 68 { 69 if(i!=n&&ji[i+1].l==ji[i].l) 70 { 71 //cout<<"sdsd"<<endl; 72 //printf("i=%d\n",i); 73 int l1=ji[i].l,r1=ji[i+1].r; 74 for(int j=i+2;j<=n;++j) 75 { 76 //printf("l1=%d r1=%d\n",l1,r1); 77 if(ji[j].l==r1&&ji[j].r<=ji[i].r) 78 {l1=ji[j].l;r1=ji[j].r;} 79 80 if(r1==ji[i].r) 81 { 82 ++ans; 83 84 break; 85 } 86 } 87 } 88 ++ans; 89 } 90 91 printf("%d",ans); 92 //while(1); 93 return 0; 94 }
标签:pre space eof ios gif one logs namespace cout
原文地址:http://www.cnblogs.com/A-LEAF/p/7252455.html