答案:67108864
#include<iostream>
using namespace std;
int main()
{
//1MB=1024KB,1KB=1024B,1B=8b
cout<<256*1024*1024/4<<endl;
return 0;
}
答案:3181
#include<iostream>
using namespace std;
int cnt[10];
bool check(int x)
{
while(x)
{
int t=x%10;
x/=10;
if(--cnt[t]<0) return false;
}
return true;
}
int main()
{
for(int i=0;i<10;i++) cnt[i]=2021;
for(int i=1;;i++)
{
if(!check(i))
{
cout<<i-1<<endl;
return 0;
}
}
}
答案:40257
#include<iostream>
#include<cmath>
#include<algorithm >
using namespace std;
const int N=200000;
struct Line{
double k,b;
}line[N];
bool cmp(Line a,Line c)
{
if(a.k!=c.k) return a.k<c.k;
return a.b<c.b;
}
int main()
{
int n=0;
for(int x1=0;x1<20;x1++)
for(int y1=0;y1<21;y1++)
for(int x2=0;x2<20;x2++)
for(int y2=0;y2<21;y2++)
{
if(x1!=x2)
{
double k=(double)(y2-y1)/(x2-x1);
double b=y1-k*x1;
line[n++]={k,b};
}
}
sort(line,line+n,cmp);
int res=1;
for(int i=1;i<n;i++)
{
if(fabs(line[i].k-line[i-1].k)>1e-8 || fabs(line[i].b-line[i-1].b)>1e-8)
res++;
}
cout<<res+20<<endl;
return 0;
}
答案:2430
#include<iostream>
#include<vector>
using namespace std;
typedef long long LL;
vector<LL> d;
int main()
{
LL n;
cin>>n;
for(LL i=1;i<=n/i;i++)
{
if(n%i==0)
{
d.push_back(i);
if(n/i!=i) d.push_back(n/i);
}
}
int res=0;
for(auto a:d)
for(auto b:d)
for(auto c:d)
if(a*b*c==n)
res++;
cout<<res<<endl;
return 0;
}