题目描述
blablabla
样例
blablabla
include[HTML_REMOVED]
include[HTML_REMOVED]
include[HTML_REMOVED]
using namespace std;
//首先要确定封闭图形有哪些对吧,0,1,2,3,4,5,6,7,8,9
//一个封闭图形的有0,4,6,9,两个的只有8,一个都没有的是1,2,3,5,7
typedef pair[HTML_REMOVED]Author;
vector[HTML_REMOVED] nums;
int close(int x)
{
int res=0;//封闭图形个数
while(x)
{
int mo=x%10;//这个是x的尾数
if(mo==8)res+=2;
else if(mo==0||mo==4||mo==6||mo==9)res+=1;
x/=10;
}
return res;
}
int main()
{
int n;
scanf(“%d”,&n);
for(int i=0;i<n;i++)
{
int x,y;
scanf(“%d”,&x);//输入数字
y=close(x);
nums.push_back({y,x});//把数字及其对应的封闭数字输出
}
sort(nums.begin(),nums.end());//将数据排序,pair有个特性就是,从左端点先开始排序再从右边断点排序
//其中begin(),end()进行排序,begin()是最开始,end()是最后面
for(auto num:nums)
{
cout<<num.second<<" ";
}
return 0;
}
//嘻嘻,Accepted
算法1
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla
算法2
(暴力枚举) O(n2)
blablabla
时间复杂度
参考文献
C++ 代码
blablabla