3.18打卡

1.到底是不是太胖了:据说一个人的标准体重应该是其身高(单位:厘米)减去100、再乘以0.9所得到的公斤数。真实体重与标准体重误差在10%以内都是完美身材(即 | 真实体重 − 标准体重 | < 标准体重×10%)。已知 1 公斤等于 2 市斤。现给定一群人的身高和实际体重,请你告诉他们是否太胖或太瘦了。

#include <iostream>
#include <algorithm>
#include <cmath>
using namespace std;
int main()
{
    int n,i,x,y,m;
    cin>>n;
    for(i=0;i<n;i++)
    {
        cin>>x>>y;
        m=(x-100)*0.9*2;
        if(fabs(m-y)<m*0.1)    cout<<"You are wan mei!";
        else if(m>y)   cout<<"You are tai shou le!";
        else    cout<<"You are tai pang le!";
        cout<<endl;
    }
    return 0;
    
}

2.输出GPLT:给定一个长度不超过10000的、仅由英文字母构成的字符串。请将字符重新调整顺序,按GPLTGPLT....这样的顺序输出,并忽略其它字符。当然,四种字符(不区分大小写)的个数不一定是一样多的,若某种字符已经输出完,则余下的字符仍按GPLT的顺序打印,直到所有字符都被输出。

#include<iostream>
#include <string>
using namespace std;
int main()
{
    string arr;
    int i=0,j=0,k=0,l=0,n,m;
    char c[4]={'G','P','L','T'};
    cin>>arr;
    n=arr.size();
    for(m=0;m<n;m++)
    {
        if(arr[m]=='G'||arr[m]=='g')    i++;
        if(arr[m]=='P'||arr[m]=='p')    j++;
        if(arr[m]=='L'||arr[m]=='l')    k++;
        if(arr[m]=='T'||arr[m]=='t')    l++;
    }
    while(i+k+j+l!=0)
    {
        if(i>0)
        {
            cout<<'G';
            i--;
        }
        if(j>0)
        {
            cout<<'P';
            j--;
        }
        if(k>0)
        {
            cout<<'L';
            k--;
        }
        if(l>0)
        {
            cout<<'T';
            l--;
        }
    }
    return 0;
}

3.帅到没朋友:

输入第一行给出一个正整数N(≤100),是已知朋友圈的个数;随后N行,每行首先给出一个正整数K(≤1000),为朋友圈中的人数,然后列出一个朋友圈内的所有人——为方便起见,每人对应一个ID号,为5位数字(从00000到99999),ID间以空格分隔;之后给出一个正整数M(≤10000),为待查询的人数;随后一行中列出M个待查询的ID,以空格分隔。

注意:没有朋友的人可以是根本没安装“朋友圈”,也可以是只有自己一个人在朋友圈的人。虽然有个别自恋狂会自己把自己反复加进朋友圈,但题目保证所有K超过1的朋友圈里都至少有2个不同的人。

#include<iostream>
#include<algorithm>
using namespace std;
int main()
{
    int n,m,i,j,p,q,a[10000],b=0;
    long arr[100000],k,l;
    for(l=0;l<100000;l++)
    {
        arr[l]=0;
    }
    cin>>n;
    for(i=0;i<n;i++)
    {
        cin>>m;
        for(j=0;j<m;j++)
        {
            cin>>k;
            if(m!=1)        //题目保证所有n超过1的朋友圈里都至少有2个不同的人
            arr[k]++;
        }
    }
    cin>>p;
    for(i=0;i<p;i++)
    {
        cin>>q;
        if(arr[q]==0)
        {
            a[b++]=q;
            arr[q]=1;       //表示已经存在这个人
        }
    }
    for(i=0;i<b;i++)
    {
        printf("%05d",a[i]);
        if(i!=b-1)    cout<<' ';
    }
    if(!b)    cout<<"No one is handsome";
    return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值