作业介绍

电梯用电量

#include<bits/stdc++.h>
using namespace std;
int main()
{
	string s;//定义有逗号的字符串 
	cin >> s;
	s+=',';
	int a[100];
	int n=0;//一共有多少次运动 
	int k=0;//分解每一个数字 
	int flag=0;//标记变量标记是否为负数 
	for(int i=0;i<s.size();i++)
	{	
		if(s[i]>='0'&&s[i]<='9')//如果是数字那么就提取出来 
		{
			k = k*10 + s[i]-'0';	
		}
		else if(s[i]=='-')//是否为负号 
		{
			flag=1;	//如果是负数那么就标记为1	
		}	
		else if(s[i]==',')//如果是逗号,那么就结束还原 
		{
			if(flag==1)//是否为负数 
			{
				k*=-1;//把我们算出来的数字变为负数 
				k+=1;//去掉第0层 
				flag=0;//还原标记变量 
			}
			a[++n] = k;//把还原出来的数字放入a数组中,并且存放楼层数要+1 
			k=0;//还原k变量重新计算 
		}
	} 
	double sum =0;//定义所花总时间为0 
	for(int i=1;i<n;i++)//当前层不耗电,所以从下一层开始 
	{//判断是上行还是下行 
		if(a[i]>a[i+1]) sum += (a[i]-a[i+1])*0.3; //下行 
		if(a[i]<a[i+1]) sum += (a[i+1]-a[i]);//上行 
	}
	printf("%.1lf",sum);//输出总耗电数
	 
	return 0;
}

门牌号

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int f,n;
	cin >> f >>n;
	int s = 0;//需要特殊标记的门牌号的数量
	int q[10]={0,1,-1,-1,-1,-1,9,-1,8,6};
	for(int i=1;i<=f;i++)
	{
	
		for(int j=1;j<=n;j++)
		{
			int mp = i*100+j;
			int tmp = mp;
			int k = 0 ;//存放倒过来之后的数字
			int flag = 0;
			while(tmp!=0)
			{
				k = k*10 + q[tmp%10];
				int yu = tmp%10;
				if(yu!=0&&yu!=1&&yu!=6&&yu!=8&&yu!=9) flag=1;
				tmp/=10;
			}
			if(k==mp&&flag==0) s++;
		}
	}
	cout << s;
	return 0;
}
状态
已结束
题目
4
开始时间
2023-12-2 0:00
截止时间
2024-2-29 23:59
可延期
24 小时