1
已采纳
栾峻岩
初级天翼
初级天翼
1799题主要思路:
m=2*n-1;
for (int i=1;i<=n;i++)
{
for (int j=0;j<s;j++)
cout<<" ";
for (int k=1;k<=m;k++)
cout<<"*";
m-=2;
s++;
cout<<endl;
}
奇数为2n-1,m就是2n-1,每次输出前先输出s个空格,在输出m个*,每次循环时m减一次2,s要加一次1,。
1250
do
{
n++;
cin>>a[n];
}
while (a[n]!=0);
for (int i=1;i<n-1;i++)
{
for (int j=i+1;j<n;j++)
{
if (a[i]*3==a[j]) count++;
}
}
cout<<count;
return 0;
输入用do-while,输入多少个不一定,后头用双重循环ij,判断a[i]*3==a[j] (j>i) ,避免重复。
最后输出条件总数。
栾峻岩在2018-01-14 17:50:02追加了内容
如果下次再问问题,可以@某人。
2
宋婉婷
中级守护
中级守护
我用了1个while循环,里面有3个for循环
while循环里面第一个循环用来数左边空格:for(……) cout << " " ;
第二个循环用来数星号:for(……) cout << " * " ;
第三个循环用来数右边空格,和第一个循环一样。
(我就是这么作的,AC,没超时)
宋婉婷在2018-01-14 16:35:36追加了内容
1799哈
宋婉婷在2018-01-14 17:03:13追加了内容
先用while循环输入,并统计有多少数,设有k个数。
然后双重for循环:i=0;i<k;i++,j=i,j<k;j++
当a[i]*3==a[j]或者a[j]*3==a[i]时,计数器s++。
最后输出s即可
宋婉婷在2018-01-14 17:03:39追加了内容
这是1250
0
0