Submission #3054188
Source Code Expand
#include<iostream>
#include<cstring>
#include<algorithm>
#include<cstdio>
using namespace std;
int m,n;
typedef pair<int,int> Pair;
Pair p[300005];
int sum[400005],add[400005];
void update(int o,int l,int r,int x,int y,int a){
if(l>=x&&r<=y){
sum[o]+=a*(r-l);
add[o]+=a;
}else{
int mid=l+r>>1;
if(x<mid)update(o<<1,l,mid,x,y,a);
if(y>mid)update(o<<1|1,mid,r,x,y,a);
sum[o]=sum[o<<1]+sum[o<<1|1]+add[o]*(r-l);
}
}
int query(int o,int l,int r,int x,int a){
if(r-l==1){
return sum[o]+a;
}else{
int mid=l+r>>1;
if(x<mid)return query(o<<1,l,mid,x,a+add[o]);
else return query(o<<1|1,mid,r,x,a+add[o]);
}
}
bool comp(Pair a,Pair b){
return a.second-a.first<b.second-b.first;
}
int main(){
scanf("%d%d",&n,&m);
for(int i=1;i<=n;i++)
scanf("%d%d",&p[i].first,&p[i].second);
sort(p+1,p+n+1,comp);
int i=1;
for(int d=1;d<=m;d++){
while(i<=n&&p[i].second-p[i].first+1<d){
update(1,1,m+1,p[i].first,p[i].second+1,1);
i++;
}
int ans=n-i+1;
for(int k=d;k<=m;k+=d)
ans+=query(1,1,m+1,k,0);
printf("%d\n",ans);
}
return 0;
}
Submission Info
Submission Time
2018-08-21 23:03:25+0900
Task
E - Snuke Line
User
luogu_bot2
Language
C++ (GCC 5.4.1)
Score
700
Code Size
1206 Byte
Status
AC
Exec Time
234 ms
Memory
5888 KB
Compile Error
./Main.cpp: In function ‘int main()’:
./Main.cpp:39:24: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d",&n,&m);
^
./Main.cpp:41:47: warning: ignoring return value of ‘int scanf(const char*, ...)’, declared with attribute warn_unused_result [-Wunused-result]
scanf("%d%d",&p[i].first,&p[i].second);
^
Judge Result
Set Name
Sample
All
Score / Max Score
0 / 0
700 / 700
Status
Set Name
Test Cases
Sample
00_example_01.txt, 00_example_02.txt
All
00_example_01.txt, 00_example_02.txt, 01.txt, 02.txt, 03.txt, 04.txt, 05.txt, 06.txt, 07.txt, 08.txt, 09.txt, 10.txt, 11.txt, 12.txt, 13.txt, 14.txt, 15.txt, 16.txt, 17.txt, 18.txt, 19.txt, 20.txt, 21.txt, 22.txt, 23.txt, 24.txt, 25.txt, 26.txt, 27.txt, 28.txt, 29.txt, 30.txt, 31.txt, 32.txt, 33.txt, 34.txt, 35.txt, 36.txt, 37.txt
Case Name
Status
Exec Time
Memory
00_example_01.txt
AC
2 ms
3712 KB
00_example_02.txt
AC
2 ms
3712 KB
01.txt
AC
2 ms
3712 KB
02.txt
AC
3 ms
3712 KB
03.txt
AC
2 ms
3712 KB
04.txt
AC
2 ms
3712 KB
05.txt
AC
3 ms
3712 KB
06.txt
AC
3 ms
3712 KB
07.txt
AC
2 ms
3712 KB
08.txt
AC
3 ms
3712 KB
09.txt
AC
2 ms
3712 KB
10.txt
AC
2 ms
3712 KB
11.txt
AC
162 ms
4864 KB
12.txt
AC
231 ms
5760 KB
13.txt
AC
126 ms
3840 KB
14.txt
AC
110 ms
3712 KB
15.txt
AC
109 ms
3712 KB
16.txt
AC
149 ms
4352 KB
17.txt
AC
228 ms
5760 KB
18.txt
AC
101 ms
3712 KB
19.txt
AC
232 ms
5760 KB
20.txt
AC
232 ms
5760 KB
21.txt
AC
231 ms
5760 KB
22.txt
AC
232 ms
5760 KB
23.txt
AC
231 ms
5760 KB
24.txt
AC
198 ms
5504 KB
25.txt
AC
112 ms
3968 KB
26.txt
AC
101 ms
3712 KB
27.txt
AC
214 ms
5632 KB
28.txt
AC
124 ms
3968 KB
29.txt
AC
223 ms
4992 KB
30.txt
AC
125 ms
3968 KB
31.txt
AC
234 ms
4480 KB
32.txt
AC
142 ms
3840 KB
33.txt
AC
125 ms
3712 KB
34.txt
AC
217 ms
5888 KB
35.txt
AC
217 ms
5888 KB
36.txt
AC
2 ms
3712 KB
37.txt
AC
77 ms
3968 KB