Submission #3711966
Source Code Expand
#include <iostream>
#include <algorithm>
#include <vector>
#include <cstdio>
#include <string>
#include <set>
#include <map>
#include <queue>
#include <stack>
#include <cmath>
#include <functional>
#include <numeric>
#include <iomanip>
#define fi first
#define se second
#define fcout(n) cout<<fixed<<setprecision((n))
#define cinl(str) getline(cin,(str))
using namespace std;
bool value(int y,int x,int R,int C){return 0<=y&&y<R&&0<=x&&x<C;}
typedef pair<int,int> pii;
typedef long long ll;
typedef vector<int> vi;
typedef vector<long long > vll;
typedef vector< vi > vvi;
double pie=acos(-1);
int INF=1000000007;
int dx[4] = { 0,-1,0,1 };
int dy[4] = { -1,0,1,0 };
int main() {
int n;
cin >> n;
map<int,int> m;
int p=0,q=0,r=0,s=0,t=0;
int ans;
for(int i=2;i<n+1;i++){
int x=i;
for(int j=2;j*j<n+1;j++){
while(x%j==0){
//素因数jの数をカウント
m[j]++;
x /= j;
}
}
//nが小さいときの数え漏れ防止
if( x!= 1) m[x]++;
}
for(int i=2;i<n+1;i++){
//p^74
if(m[i]>=74) p++;
//p^24
if(m[i]>=24) q++;
//p^14
if(m[i]>=14) r++;
//p^4
if(m[i]>=4) s++;
//p^2
if(m[i]>=2) t++;
}
//(p^74の数)+(p^24*q^2の数)+(p^14*q^4の数)+(p^4*q^4*r^2の数)
//自身を選んだり、(p,q),(q,p)を別のものと数えないようにする
//((pの数)*(p以外のqの数)*t)/2(pとqを入れ替えたもの重複分)-((pの数)*(p以外のqの数)分p,qからtを選んでしまった分)
ans = p + (q*t-q) + (r*s-r) + (s*(s-1)*t-2*s*(s-1))/2;
cout<<ans<<endl;
}
Submission Info
| Submission Time | |
|---|---|
| Task | D - 756 |
| User | Cytus |
| Language | C++14 (GCC 5.4.1) |
| Score | 400 |
| Code Size | 1608 Byte |
| Status | AC |
| Exec Time | 1 ms |
| Memory | 256 KiB |
Judge Result
| Set Name | Sample | All | ||||
|---|---|---|---|---|---|---|
| Score / Max Score | 0 / 0 | 400 / 400 | ||||
| Status |
|
|
| Set Name | Test Cases |
|---|---|
| Sample | a01, a02, a03 |
| All | a01, a02, a03, b04, b05, b06, b07, b08, b09, b10, b11, b12, b13, b14, b15, b16, b17, b18, b19, b20 |
| Case Name | Status | Exec Time | Memory |
|---|---|---|---|
| a01 | AC | 1 ms | 256 KiB |
| a02 | AC | 1 ms | 256 KiB |
| a03 | AC | 1 ms | 256 KiB |
| b04 | AC | 1 ms | 256 KiB |
| b05 | AC | 1 ms | 256 KiB |
| b06 | AC | 1 ms | 256 KiB |
| b07 | AC | 1 ms | 256 KiB |
| b08 | AC | 1 ms | 256 KiB |
| b09 | AC | 1 ms | 256 KiB |
| b10 | AC | 1 ms | 256 KiB |
| b11 | AC | 1 ms | 256 KiB |
| b12 | AC | 1 ms | 256 KiB |
| b13 | AC | 1 ms | 256 KiB |
| b14 | AC | 1 ms | 256 KiB |
| b15 | AC | 1 ms | 256 KiB |
| b16 | AC | 1 ms | 256 KiB |
| b17 | AC | 1 ms | 256 KiB |
| b18 | AC | 1 ms | 256 KiB |
| b19 | AC | 1 ms | 256 KiB |
| b20 | AC | 1 ms | 256 KiB |