锘??xml version="1.0" encoding="utf-8" standalone="yes"?>狠狠人妻久久久久久综合,久久99国产综合精品女同,香港aa三级久久三级老师2021国产三级精品三级在 http://www.shnenglu.com/ZAKIR/category/14778.html錕?鏂桟ode騫村崕=錕?/description>zh-cnMon, 30 Aug 2010 13:23:11 GMTMon, 30 Aug 2010 13:23:11 GMT60HDU 1754 I hate ithttp://www.shnenglu.com/ZAKIR/articles/125278.htmlZAKIRZAKIRMon, 30 Aug 2010 08:48:00 GMThttp://www.shnenglu.com/ZAKIR/articles/125278.htmlhttp://www.shnenglu.com/ZAKIR/comments/125278.htmlhttp://www.shnenglu.com/ZAKIR/articles/125278.html#Feedback0http://www.shnenglu.com/ZAKIR/comments/commentRss/125278.htmlhttp://www.shnenglu.com/ZAKIR/services/trackbacks/125278.html 1 #include <iostream>
 2 #include <cstdio>
 3 #include <cstring>
 4 using namespace std;
 5 
 6 const int MaxSize=2000001;
 7 
 8 struct Node
 9 {    int left,right,mid;
10     int max;
11 }itree[MaxSize*3];
12 
13 int nu[MaxSize];
14 
15 int Build(int l,int r,int num)
16 {    itree[num].left=l;
17     itree[num].right=r;
18     itree[num].mid=(l+r)>>1;
19     if(l==r)
20     {    return itree[num].max=nu[l];
21     }
22     
23     int lm=Build(l,itree[num].mid,num<<1);
24     int rm=Build(itree[num].mid+1,r,(num<<1)+1);
25     return (itree[num].max=lm>rm?lm:rm);
26 }
27 
28 void Update(int id,int val,int num)
29 {    if(itree[num].left==itree[num].right)
30     {    itree[num].max=val;
31         return;
32     }
33 
34     if(id<=itree[num].mid)
35         Update(id,val,num<<1);
36     else
37         Update(id,val,(num<<1)+1);
38     itree[num].max=itree[num<<1].max>itree[num*2+1].max?itree[num<<1].max:itree[num*2+1].max;
39 }
40 
41 int Query(int l,int r,int num)
42 {    if(itree[num].left==l&&itree[num].right==r)
43         return itree[num].max;
44     if(r<=itree[num].mid)
45         return Query(l,r,num<<1);
46     if(l>itree[num].mid)
47         return Query(l,r,num*2+1);
48     int lm=Query(l,itree[num].mid,num<<1);
49     int rm=Query(itree[num].mid+1,r,num*2+1);
50     return lm>rm?lm:rm;
51 }
52 
53 int main()
54 {    int N,M;
55     while(scanf("%d%d",&N,&M)!=EOF)
56     {    for(int i=1;i<=N;i++)
57             scanf("%d",ν[i]);
58         
59         Build(1,N,1);
60         char c[100];
61         int a,b;
62         for(int i=1;i<=M;i++)
63         {    scanf("%s%d%d",c,&a,&b);
64             if(c[0]=='Q')
65                 printf("%d\n",Query(a,b,1));
66             else
67                 Update(a,b,1);
68         }
69     }
70     return 0;
71 }

ZAKIR 2010-08-30 16:48 鍙戣〃璇勮
]]>
HDU 1166鏁屽叺甯冮樀http://www.shnenglu.com/ZAKIR/articles/125268.htmlZAKIRZAKIRMon, 30 Aug 2010 06:13:00 GMThttp://www.shnenglu.com/ZAKIR/articles/125268.htmlhttp://www.shnenglu.com/ZAKIR/comments/125268.htmlhttp://www.shnenglu.com/ZAKIR/articles/125268.html#Feedback0http://www.shnenglu.com/ZAKIR/comments/commentRss/125268.htmlhttp://www.shnenglu.com/ZAKIR/services/trackbacks/125268.html  1 #include <iostream>
  2 #include <cstdio>
  3 using namespace std;
  4 
  5 const int MaxSize=50001;
  6 
  7 int st[MaxSize*3];
  8 
  9 int num[MaxSize],N;
 10 
 11 void Build(int l,int r,int pos)
 12 {
 13     if(l==r)
 14     {
 15         st[pos]=num[l];
 16         return;
 17     }
 18 
 19     int mid=(l+r)>>1;
 20     Build(l,mid,pos*2);
 21     Build(mid+1,r,pos*2+1);
 22     st[pos]=st[pos*2]+st[pos*2+1];
 23 }
 24 
 25 void mod(int left,int right,int l,int r,int pos,int val)
 26 {
 27     if(left==right)
 28     {
 29         st[pos]+=val;
 30         return;
 31     }
 32     int mid=(left+right)>>1;
 33     if(r<=mid)
 34         mod(left,mid,l,r,pos*2,val);
 35     else if(l>mid)
 36         mod(mid+1,right,l,r,pos*2+1,val);
 37     else
 38     {
 39         mod(left,mid,l,mid,pos*2,val);
 40         mod(mid+1,right,mid+1,r,pos*2+1,val);
 41     }
 42     st[pos]=st[pos*2]+st[pos*2+1];
 43 }
 44 
 45 int Query(int left,int right,int l,int r,int pos)
 46 {
 47     if(l==left&&r==right)
 48         return st[pos];
 49 
 50     if(left==right)
 51         return st[pos];
 52 
 53     int mid=(left+right)>>1;
 54     if(r<=mid)
 55         return Query(left,mid,l,r,pos*2);
 56     else if(l>mid)
 57         return Query(mid+1,right,l,r,pos*2+1);
 58     else
 59     {
 60         int ln=Query(left,mid,l,mid,pos*2);
 61         int rn=Query(mid+1,right,mid+1,r,pos*2+1);
 62         return ln+rn;
 63     }
 64 }
 65 
 66 int main()
 67 {
 68     int T;
 69     scanf("%d",&T);
 70     for(int ks=1;ks<=T;ks++)
 71     {
 72         scanf("%d",&N);
 73         for(int i=1;i<=N;i++)
 74             scanf("%d",num+i);
 75         Build(1,N,1);
 76         char com[20];
 77         printf("Case %d:\n",ks);
 78         while(cin>>com)
 79         {
 80             if(com[0]=='E')
 81                 break;
 82             else if(com[0]=='Q')
 83             {
 84                 int l,r;
 85                 scanf("%d%d",&l,&r);
 86                 printf("%d\n",Query(1,N,l,r,1));
 87             }
 88             else if(com[0]=='A')
 89             {
 90                 int pos,val;
 91                 scanf("%d%d",&pos,&val);
 92                 mod(1,N,pos,pos,1,val);
 93             }
 94             else if(com[0]=='S')
 95             {
 96                 int pos,val;
 97                 scanf("%d%d",&pos,&val);
 98                 mod(1,N,pos,pos,1,-val);
 99             }
100         }
101     }
102     return 0;
103 }

ZAKIR 2010-08-30 14:13 鍙戣〃璇勮
]]>
HDU 3400 Line belthttp://www.shnenglu.com/ZAKIR/articles/125137.htmlZAKIRZAKIRSun, 29 Aug 2010 03:07:00 GMThttp://www.shnenglu.com/ZAKIR/articles/125137.htmlhttp://www.shnenglu.com/ZAKIR/comments/125137.htmlhttp://www.shnenglu.com/ZAKIR/articles/125137.html#Feedback0http://www.shnenglu.com/ZAKIR/comments/commentRss/125137.htmlhttp://www.shnenglu.com/ZAKIR/services/trackbacks/125137.html 1 #include <cstdio>
 2 #include <cmath>
 3 using namespace std;
 4 
 5 struct Point
 6 {
 7     double x,y;
 8 };
 9 
10 const double EPS=1e-10;
11 
12 double Dis(Point& a,Point& b)
13 {
14     return sqrt((a.x-b.x)*(a.x-b.x)+(a.y-b.y)*(a.y-b.y));
15 }
16 int main()
17 {
18     int T;
19     scanf("%d",&T);
20     while(T--)
21     {
22         Point a,b,c,d;
23         scanf("%lf%lf%lf%lf",&a.x,&a.y,&b.x,&b.y);
24         scanf("%lf%lf%lf%lf",&c.x,&c.y,&d.x,&d.y);
25         int P,Q,R;
26         scanf("%d%d%d",&P,&Q,&R);
27 
28         Point left1=a,right1=b;
29         double ans=0;
30         do
31         {
32             Point mid1,midmid1;
33             double time1,time2;
34             mid1.x=(left1.x+right1.x)/2;
35             mid1.y=(left1.y+right1.y)/2;
36             time1=Dis(mid1,a)/P;
37             Point left2=c,right2=d;
38             do
39             {
40                 Point mid2,midmid2;
41                 mid2.x=(left2.x+right2.x)/2;
42                 mid2.y=(left2.y+right2.y)/2;
43                 double time21=Dis(mid1,mid2)/R;
44                 time21+=Dis(mid2,d)/Q;
45 
46                 midmid2.x=(mid2.x+right2.x)/2;
47                 midmid2.y=(mid2.y+right2.y)/2;
48                 double time22=(Dis(mid1,midmid2))/R;
49                 time22+=Dis(midmid2,d)/Q;
50                 if(time21<time22)
51                     right2=midmid2;
52                 else
53                     left2=mid2;
54             }while(Dis(left2,right2)>EPS);
55             time1+=Dis(mid1,left2)/R;
56             time1+=Dis(left2,d)/Q;
57 
58             midmid1.x=(mid1.x+right1.x)/2;
59             midmid1.y=(mid1.y+right1.y)/2;
60             time2=Dis(midmid1,a)/P;
61             left2=c;right2=d;
62             do
63             {
64                 Point mid2,midmid2;
65                 mid2.x=(left2.x+right2.x)/2;
66                 mid2.y=(left2.y+right2.y)/2;
67                 double time21=Dis(mid2,midmid1)/R;
68                 time21+=Dis(mid2,d)/Q;
69                 
70                 midmid2.x=(mid2.x+right2.x)/2;
71                 midmid2.y=(mid2.y+right2.y)/2;
72                 double time22=Dis(midmid1,midmid2)/R;
73                 time22+=Dis(midmid2,d)/Q;
74                 if(time21<time22)
75                     right2=midmid2;
76                 else
77                     left2=mid2;
78             }while(Dis(left2,right2)>EPS);
79             time2+=Dis(midmid1,left2)/R;
80             time2+=Dis(left2,d)/Q;
81             if(time1<time2)
82             {
83                 ans=time1;
84                 right1=midmid1;
85             }
86             else
87             {
88                 ans=time2;
89                 left1=mid1;
90             }
91         }while(Dis(left1,right1)>EPS);
92         printf("%.2lf\n",ans);
93     }
94     return 0;
95 }

ZAKIR 2010-08-29 11:07 鍙戣〃璇勮
]]>
久久亚洲AV成人无码国产| 亚洲va中文字幕无码久久| 99久久人妻无码精品系列| 亚洲精品乱码久久久久久按摩| 久久天天躁狠狠躁夜夜av浪潮| 国产香蕉97碰碰久久人人| 国产精品免费看久久久| 久久精品国产亚洲av麻豆色欲| 久久精品国产精品亚洲精品| 久久婷婷五月综合色奶水99啪| 伊人久久大香线蕉综合热线| 亚洲欧美国产日韩综合久久| 性做久久久久久久久老女人| 欧美久久久久久| 久久精品国产男包| 人妻丰满AV无码久久不卡| 久久久久亚洲av无码专区| 99久久久国产精品免费无卡顿 | 色偷偷久久一区二区三区| 色综合久久无码五十路人妻| 久久99精品久久久久久久久久| 91精品国产综合久久婷婷| 久久精品成人免费网站| 久久99精品久久久久久噜噜| 欧美久久一级内射wwwwww.| 久久久久久久女国产乱让韩| 久久久久久毛片免费播放| 亚洲精品高清国产一久久| 久久精品亚洲欧美日韩久久| 奇米影视7777久久精品人人爽| 人妻精品久久无码区| 国产精品内射久久久久欢欢| 亚洲国产天堂久久久久久 | 青青青伊人色综合久久| 久久久久亚洲AV成人网人人网站| 久久久久亚洲AV成人网人人网站| 丰满少妇人妻久久久久久| 久久精品国产亚洲5555| 久久久久久久人妻无码中文字幕爆| 大蕉久久伊人中文字幕| 久久久久亚洲av成人网人人软件|