第一题2022转化成九进制。
签到题,话不多说直接2*9^3+2*9+2=1478
第二题重在理解题意好吧。 打开电脑日历或者自己手写可能的情况。 答案为
分别为(20220123 ,20221123,20221230,20221231);
第三题:与去年日期跑步题有点相似,相信掌握了去年日期跑步题这道题也不难,
直接上代码好吧。
#include
using namespace std;
typedef long long ll;
int main()
{
ll day=0;//今天是礼拜几
ll cnt=0;//记录已刷题目
ll a,b;n;
ll s=0;//记录天数
cin>>a>>b>>n;//a为周一到周五所写题目,b为周末所写题目,n为总题目。
while(cnt=1&&day<=5)cnt+=a;
else cnt+=b;
s++;
}
cout<
第四题也不难,看出规律就行。
经观察在第一颗或者最后一颗树=2*n-2;中间的树第i颗最高长为max((i-1)*2,(n-i)*2).题目结束,直接上代码。
#include
using namespace std;
typedef long long ll;
int main()
{
ll n;
ll a[100005];
cin>>n;
for(ll i;i<=n;i++)
{
ll c=(i-1)*2;
ll d=(n-i)*2;
if(i==1||i==n)a[i]=2*n-2;
else a[i]=max(c,d);
}
for(ll i=1;i<=n;i++)
{
cout<
第五题下面为x进制问题,刚拿题也有点懵,不过既然是进制所以往进制方面想如321(3为8进制,2为10进制,1为2进制)本位是由上一位进制而来所以3这个位是有2(10进制)进位而2这个位是由1(2进制)所以可以猜想结果位3这个位上的数结果为3*10*2=60,2这个位上的数大小为2*2,1这个位上就是1,所以结果为60+4+1=65;符合答案。
再可以根据下面的例子实验看出看出这个想法是正确的。
即可以公式化第n为大小为n*(n-1)*(n-2)...*1其中n指n位上的数值.其他如n-1是指n-1为上的进制大小,同理n-2,n-3....1也同n-1.最后将每个位这样计算再相加就可以得出答案。
代码略。
。
。
今天不想写了。
。
。
有时间加补其他的。
。
。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)