开关灯(去逗号)

今天做了题,题去下。
在这里插入图片描述
这题实际上不难,由于做过类似的题,可以说很容易。原理就是有数组来区分不同时期,灯不同的状态,从而进行判断。现在上代码。

#include <iostream>
using namespace std;

int main(){    
    int L,M,a[5001]={0};
    int i,j;
    cin>>L>>M;
    for(i=1;i<=L;i++)
    { a[i]=-1;
    }
    for(i=1;i<=M;i++)
    {  for(j=1;j<=L;j++)
       { if(j%i==0)
         a[j]*=-1;
        }
      }
      for(i=1;i<=L;i++)
      { if(a[i]==1)
         { if(a[0]==0)
           a[0]=3;
           else cout<<",";
           cout<<i;
          }
       } 
    return 0;
}

这是我个人写的,是有点麻烦,见谅
~( ̄▽ ̄~)
其实我强调的是逗号问题,本题要求用逗号隔开输入。唉╯﹏╰,真是一个逗号难倒英雄汉。最终我还是解决了。-~( ̄▽ ̄~)~

     for(i=1;i<=L;i++)
      { if(a[i]==1)
         { if(a[0]==0)
           a[0]=3;
           else cout<<",";
           cout<<i;
          }

通过一个if语录,将第一个逗号消掉。这个办法虽然简单,但我感觉很有灵性,所以我想记录一下。(。ò ∀ ó。)

本文只为日后复习使用。
本人才学疏浅,望大佬勿笑。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值