A 空间
1.解题思路
1MB=1024KB=1024B
1B=8bit
所以256MB=25610241024*8就是所占字节。
所求=25610241024*8/32=67108864
答案为:67108864
B 卡片
1.解题思路
暴力模拟即可
2.代码
#include<iostream>
using namespace std;
main()
{
int a[10];
for(int i=0;i<10;i++)
{
a[i]=2021;
}
int j,flag=1,m;
for(int i=1;;i++)
{
j=i;
while(j)
{
a[j%10]--;
if(a[j%10]<0)
{
flag=0;
break;
}
j/=10;
}
if(flag==0)
{
break;
}
m=i;
}
cout<<m;
}
输出:3181
注意:在
if(a[j%10]<0)
{
flag=0;
break;
}
中第一次把if(a[j%10]<=0)输出成了3180,当a【i】=0时不能停止,用完小于0才结束。
C 直线
1.解题思路
D 货物摆放
解题思路
分解因数,暴力遍历。
代码:
第一次想着暴力遍历,结果需要若干个小时才跑的完。
#include<iostream>
using namespace std;
main()
{
long long n=2021041820210418,n1,n2,n3=0;
int cou=0;
for(long long i=1;i<=n;i++)
{
n1=n/i;
for(long long j=1;j<=n;j++)
{
n2=n1/j;
for(long long p=1;p<=n;p++)
{
if(n2%p==0)
{
cou++;
cout<<"还在跑着,这是第"<<n3++<<"次"<<endl;
}
}
}
}
cout<<"答案出来了!"<<endl;
cout<<cou;
}