头像

零落L




离线:4小时前


最近来访(43)
用户头像
Giancarl0
用户头像
xi.xi
用户头像
Giancarlo
用户头像
ANt_XSYY
用户头像
羊羽羽
用户头像
熊汝
用户头像
Learningxiaoli
用户头像
Agust.
用户头像
baibaile
用户头像
Pretharp
用户头像
耳朵先撒了谎
用户头像
ShawnWen
用户头像
cxhzs
用户头像
yxc的小迷妹
用户头像
解封用户
用户头像
yangxiufeng
用户头像
trudbot
用户头像
W._0
用户头像
xutianyi
用户头像
二三_zt


零落L
2天前

C++ 代码

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
void printT(char ch,int times){
    for (int i = 1; i <=times; i++)
    {
        printf("%c",ch);
    }
}
int main(){
    int n;cin>>n;
    int i;
    for (i = 1; i < (n+1)/2; i++){
        printT(' ',(n-(2*i-1))/2);
        printT('*',(2*i-1));
        printT(' ',(n-(2*i-1))/2);
        printf("\n");
    }

    for (i=(n+1)/2; i >= 1; i--){
            printT(' ',(n-(2*i-1))/2);
            printT('*',(2*i-1));
            printT(' ',(n-(2*i-1))/2);
            printf("\n");
    }    
    return 0;
}



零落L
3天前

两次没过的原因:
1. 超时
2. prime拼错了....

C++ 代码

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
int main(){
    int n;cin>>n;
    int x;
    bool isprime=false;
    for (int i = 0; i < n; i++)
    {
        isprime=true;
        cin>>x;
        if(x<=1){
            isprime=false;
        }else{
            for (int j = 2; j <= sqrt(x); j++)
            {
                if(x%j==0){
                    isprime=false;
                    break;
                }
            }
        }
        if(isprime)printf("%d is prime\n",x);
        else printf("%d is not prime\n",x);
    }    
    return 0;
}



零落L
4天前

感谢网友们的题解,参考来源1:数学知识参考来源2:算法优化

解法1:打表,C++ 代码

算了,我做不出来

解法2:优化,C++ 代码

#include <iostream>
#include <cstdio>
#include <cmath>
using namespace std;
bool Isperfect(int num){
    int sum=1;
    if(num==1)return false;
    else{
        for (int i = 2; i <= sqrt(num); i++){
            if(num%i==0){
                if(num/i==i){
                    sum+=i;
                }else{
                    sum+=i;sum+=(num/i);
                }
            }
        }
        if(sum==num){
            return true;
        }else {
            return false;
        }
    }
}
int main(){
    int n;cin>>n;
    int x;
    while(n>0){
        n--;
        cin>>x;
        if(Isperfect(x)){
            printf("%d is perfect\n",x);
        }else {
            printf("%d is not perfect\n",x);
        }
    }
    return 0;
}



零落L
4天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int sum=0;
    int m,n;cin>>m>>n;
    while(m>0&&n>0){
        sum=0;
        if(m>n){
            int t=n;n=m;m=t;
        }
        for (int i = m; i <= n; i++){
            printf("%d ",i);
            sum+=i;
        }
        printf("Sum=%d\n",sum);
        cin>>m>>n;
    }
    return 0;
}



零落L
4天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int n;cin>>n;
    int ptr=0,pre=1;
    //斐波那契数列 0 1 2 2 3 5
    //按规律,在0之前是1,-1
    //即-1 1 0 1 1 2 3
    int temp;
    int i=1;
    while(i<=n){
        i++;
        printf("%d ",ptr);
        temp=pre;pre=ptr;ptr=temp+ptr;
    }
    return 0;
}



零落L
4天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int n;cin>>n;
    int x,y;
    int sum;
    for (int i = 0; i < n; i++)
    {
        cin>>x>>y;
        if(x>y){
            int t=y;
            y=x;
            x=t;
        }
        sum=0;
        for (int j = x+1; j < y; j++)
        {
            if((j&1)==1){
                sum+=j;
            }
        }
        printf("%d\n",sum);

    }

    return 0;
}



零落L
4天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int n;cin>>n;
    int in_range=0,out_range=0;
    int x;
    for (int i = 0; i < n; i++)
    {
        cin>>x;
        if(x<=20&&x>=10){
            in_range++;
        }else{
            out_range++;
        }
    }
    printf("%d in\n%d out",in_range,out_range);
    return 0;
}



零落L
5天前

网友们的提示:最好不要混用printf和cout,详见此处

但是我太懒了,不想用cout输出double,我觉得有点麻烦:
cout<<fixed<<setprecision(2)<<what<<endl;

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int n;cin>>n;
    int sum=0,num_c=0,num_r=0,num_f=0;
    int i=0;
    char which;
    int num_temp;
    while(i<n){
        scanf("%d %c",&num_temp,&which);
        switch (which)
        {
        case 'C':
            num_c+=num_temp;
            break;
        case 'R':
            num_r+=num_temp;
            break;
        case 'F':
            num_f+=num_temp;
            break;;
        }
        sum+=num_temp;
        i++;
    }
    printf("Total: %d animals\n\
Total coneys: %d\n\
Total rats: %d\n\
Total frogs: %d\n\
Percentage of coneys: %.2lf %%\n\
Percentage of rats: %.2lf %%\n\
Percentage of frogs: %.2lf %%\n",
sum,num_c,num_r,num_f,
num_c/((double)sum)*100,num_r/((double)sum)*100,num_f/((double)sum)*100);
    return 0;
}



零落L
5天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int n;cin>>n;
    for (int i = 1; i <= 10; i++)
    {
        printf("%d x %d = %d\n",i,n,i*n);
    }

    return 0;
}



零落L
5天前

C++ 代码

#include <iostream>
#include <cstdio>
using namespace std;
int main(){
    int x;cin>>x;
    int num=0;
    while (num<6)
    {
        if((x&1)==1){
            num++;
            printf("%d\n",x);
            x=x+2;
        }else {
            x=x+1;
        }
    }

    return 0;
}