rating掉的哗哗的T^T
1001:水题
1002:水题,但是题目看错了+手速太捉急
看一下样例解释就会知道,实际上第i个人只能坐第i辆公交车。= =好反人类
这样的话题目就简单了许多.....
1003:想出了相邻元素相除再模式匹配的方法......无奈第二题卡题ing+不会AC自动机,放弃
码农模拟题手速还是要练。要有gx大神那种手速才行orz
附1002 code:
以后养成尽量用scanf、printf的习惯....白TLE了一次
1 #include <iostream>
2 #include <cstring>
3 #include <cstdio>
4usingnamespace std;
5#define mmx 100010
6#define LL long long
7 8struct PER
9{
10int x,y,dir;
11}p[mmx];
1213LL a[mmx],A[mmx],ans[mmx];
14int T,n,m;
1516int main()
17{
18 cin>>T;
19while (T--)
20 {
21 cin>>n>>m;
22 memset(A,0,sizeof(A));
23for (int i=1;i<=n-1;i++)
24 {
25//cin>>a[i]; //a[i]:i->i+126 scanf("%d",&a[i]);
27 A[i+1]=A[i]+a[i]; //A[i]:1-->i A[i]-A[j]: j-->i28 }
2930for (int i=1;i<=m;i++)
31 {
32//cin>>p[i].x>>p[i].y; //person i : x->y33 scanf("%d%d",&p[i].x,&p[i].y);
34if (p[i].y>p[i].x) p[i].dir=1; else p[i].dir=2;
35int tx=p[i].x,ty=p[i].y,pos=((i-1)%n)+1;
36if (p[i].dir==1) // -->37 {
38if (tx==pos)
39 ans[i]=A[ty]-A[tx];
40elseif (pos>tx)
41 ans[i]=A[n]-A[pos]+A[n]+A[ty];
42else43 ans[i]=A[ty]-A[pos];
44 }
45else// <--46 {
47if (pos==tx)
48 ans[i]=A[n]-A[pos]+A[n]-A[ty];
49elseif (pos<tx)
50 ans[i]=A[n]-A[pos]+A[n]-A[ty];
51else52 ans[i]=A[n]-A[pos]+A[n]-A[ty];
53 }
54 }
55for (int i=1;i<=m;i++)
56 printf("%I64dn",ans[i]);
57//cout<<ans[i]<<endl;58 }
596061return0;
62 }
1003半成品code,以后刷到自动机的时候再填坑
1 #include <iostream>
2usingnamespace std;
3 4 5int main()
6{
7 cin>>T;
8while (T--)
9 {
10 cin>>n>>m;
11for (int i=0; i<n; i++)
12 scanf("%d",&a[i]); //Alice13for (int i=n-1;i>=1;i--)
14 {
15 r[i-1]=a[i]/a[i-1];
16 }
17 n--;
18 r[n]=0;
19//r[0...n-1]:text2021longlong ans=0;
22for(int i=1;i<=m;i++)
23 {
24 cin>>p;
25for (int j=0;j<p;j++)
26 cin>>a[j];
27if (p==1)
28 {
29 ans+=n+1;
30 }
31else32 {
33for (int j=p-1;j>=1;j--)
34 b[j-1]=a[j]/a[j-1];
35 p--;
36 b[p]=0;
37//b[0..p-1]:pattern38 }
39 }
404142 }
43 }
原文:http://www.cnblogs.com/pdev/p/4246886.html
【说明】:本文章由站长整理发布,文章内容不代表本站观点,如文中有侵权行为,请与本站客服联系(QQ:254677821)!