C++简单邮箱问题

2007-09-12 10:32

问题:今有邮箱150个,按序编号。全部关闭。邮递员从二号开始一次将2的倍数的邮箱打开,然后数倍数为3的邮箱,已经打开的关闭,已关闭的打开。依次操作倍数为4,5,6,。。。。。。150为止。输出最后关闭的邮箱号码。

#include<iostream>
using namespace std;

int main()
{
int g[150];
for(int i=0;i<150;i++)
{
g[i] = i+1;
}
for(int j=1;j<150;j++)
{
for(int m=j;m<150;m++)
{
    if(g[m]==0&&(m+1)%(j+1)==0)
    g[m] = m+1;

else
    if(g[m]!=0 && g[m]%(j+1)==0)
     g[m] = 0;


}
}
for(int p=0;p<150;p++)
{
if(g[p]!=0)
    cout<<g[p]<<endl;

}

return 0;


作者:玄魂
出处:http://www.cnblogs.com/xuanhun/
原文链接:http://www.cnblogs.com/xuanhun/ 更多内容,请访问我的个人站点 对编程,安全感兴趣的,加qq群:hacking-1群:303242737,hacking-2群:147098303,nw.js,electron交流群 313717550。
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
关注我:关注玄魂的微信公众号

原文地址:https://www.cnblogs.com/xuanhun/p/1662428.html