QOJ.ac
QOJ
ID | 题目 | 提交者 | 结果 | 用时 | 内存 | 语言 | 文件大小 | 提交时间 | 测评时间 |
---|---|---|---|---|---|---|---|---|---|
#660711 | #9255. Python Program | lllei# | AC ✓ | 3ms | 3960kb | C++20 | 2.3kb | 2024-10-20 12:51:35 | 2024-10-20 12:51:36 |
Judging History
answer
#include<bits/stdc++.h>
using namespace std;
const int maxn=1e2+10;
char s[maxn];
char a,b;
long long sum(int l,int r,int c)
{
if(l<r&&c>0)
{
r--;
int s=l,m=(r-l)/c*c+l;
int num=(r-l)/c+1;
return (s+m)*1LL*num/2;
}
else if(l>r&&c<0)
{
r++;
c=-c;
int s=l,m=l-(l-r)/c*c;
int num=(l-r)/c+1;
return (s+m)*1LL*num/2;
}
else return 0;
}
int l1,r1,l2,r2,c1,c2;
int main()
{
scanf("%s",s);
getchar();
scanf(" for %c in range(%d,%d",&a,&l1,&r1);
char ch=getchar();
if(ch==')')c1=1;
else
{
int flag=1;
ch=getchar();
if(ch=='-')flag=-1,ch=getchar();
c1=ch-'0';
ch=getchar();
while(ch!=')')
{
c1=c1*10+ch-'0';
ch=getchar();
}
c1*=flag;
}
// cout<<ch<<'\n';
ch = getchar();
ch = getchar();
int res = scanf(" for %c in range(",&b);
ch=getchar();
if(ch>'9'||ch<'0')l2=-1,ch=getchar();
else
{
l2=ch-'0';
ch=getchar();
while(ch!=',')
{
l2=l2*10+ch-'0';
ch=getchar();
}
}
ch=getchar();
if(ch>'9'||ch<'0')r2=-1,ch=getchar();
else
{
r2=ch-'0';
ch=getchar();
while(ch!=','&&ch!=')')
{
r2=r2*10+ch-'0';
ch=getchar();
}
}
ch=getchar();
if(ch==':')c2=1;
else
{
if((ch>'9'||ch<'0')&&ch!='-')c2=0;
else
{
int flag=1;
if(ch=='-')flag=-1,ch=getchar();
c2=ch-'0';
ch=getchar();
while(ch!=')')
{
c2=c2*10+ch-'0';
ch=getchar();
}
c2=c2*flag;
}
}
if(l1>r1)
{
long long ans=0;
for(int i=l1;i>r1;i+=c1)ans+=sum(l2==-1?i:l2,r2==-1?i:r2,c2==0?i:c2);
printf("%lld\n",ans);
}
else
{
long long ans=0;
for(int i=l1;i<r1;i+=c1)ans+=sum(l2==-1?i:l2,r2==-1?i:r2,c2==0?i:c2);
printf("%lld\n",ans);
}
}
/*
ans=0
for a in range(1,3):
for b in range(5,1,-2):
ans+=b
print(ans)
*/
詳細信息
Test #1:
score: 100
Accepted
time: 0ms
memory: 3960kb
input:
ans=0 for a in range(1,3): for b in range(5,1,-2): ans+=b print(ans)
output:
16
result:
ok single line: '16'
Test #2:
score: 0
Accepted
time: 0ms
memory: 3924kb
input:
ans=0 for q in range(100,50,-1): for i in range(q,77,20): ans+=i print(ans)
output:
2092
result:
ok single line: '2092'
Test #3:
score: 0
Accepted
time: 0ms
memory: 3900kb
input:
ans=0 for i in range(1,1000000): for j in range(i,1,-1): ans+=j print(ans)
output:
166666666665500001
result:
ok single line: '166666666665500001'
Test #4:
score: 0
Accepted
time: 1ms
memory: 3764kb
input:
ans=0 for i in range(31,321983,2): for j in range(313,382193): ans+=j print(ans)
output:
11756963404587200
result:
ok single line: '11756963404587200'
Test #5:
score: 0
Accepted
time: 3ms
memory: 3764kb
input:
ans=0 for i in range(1,1000000): for j in range(i,114514,-1): ans+=j print(ans)
output:
160610445975856765
result:
ok single line: '160610445975856765'
Extra Test:
score: 0
Extra Test Passed