2 条题解
-
1
考虑容斥原理 时间复杂度O(1)
#include <iostream> using namespace std; int main(){ int n; cin>>n; int a=n/3*(n/3-1)/2; for(int i=1;i<=1;i++)a+=((n+3-i)/3)*((n+i)/3); int b=n/7*(n/7-1)/2; for(int i=1;i<=3;i++)b+=((n+7-i)/7)*((n+i)/7); int c=n/21*(n/21-1)/2; for(int i=1;i<=10;i++)c+=((n+21-i)/21)*((n+i)/21); cout<<a+b-c; return 0; }
信息
- ID
- 87
- 时间
- 1000ms
- 内存
- 32MiB
- 难度
- 4
- 标签
- 递交数
- 28
- 已通过
- 18
- 上传者