头像

Fireflylight

要学会c++,c++会教会你很多东西




离线:29天前


最近来访(172)
用户头像
WinterSweet
用户头像
wpc123
用户头像
辣鸡号航母
用户头像
Whalefall.
用户头像
或许本该如此.
用户头像
lpq1234
用户头像
shijiahao123_fdfsbv_da_sb
用户头像
嘤嘤嘤么么叽
用户头像
Samuely
用户头像
ljh_lxy
用户头像
acwing_xyy
用户头像
163.com
用户头像
我就是个屑
用户头像
incra
用户头像
天元之弈
用户头像
这就敲给你看
用户头像
EMOOUT
用户头像
不知起风
用户头像
18910310021
用户头像
yxc的小迷妹


Fireflylight
1个月前
#include<bits/stdc++.h>
using namespace std;
int main(){
    char s;//第一行输入的一个大写字母
    cin>>s;//输入大写字母
    double m[12][12];//定义一个二维数组 M[12][12]
    for(int i=0;i<12;i++){//双重循环
        for(int j=0;j<12;j++){//
            cin>>m[i][j];//输入二维数组 M[12][12]
        }
    }
    double a=0,c=0;//右下半部分的元素的和 和 右下半的元素部分个数
    for(int i=1;i<12;i++){//
        for(int j=12-i;j<12;j++){//
            a+=m[i][j];//求右下半部分的元素的和
            c++;//右下半的元素部分个数加一
        }
    }
    if(s=='S') printf("%.1f\n",a);//若为 S 输出右下半部分的元素的和
    else printf("%.1lf\n",a/c);//若为 M 输出右下半部分的元素的平均值
}



Fireflylight
1个月前

题目描述

输入一个二维数组 M[12][12],根据输入的要求,求出二维数组的右下半部分元素的平均值或元素的和。

右下半部分是指次对角线下方的部分,如下图所示,黄色部分为对角线,绿色部分为右下半部分:

截图20221215195547.png

输入格式
第一行输入一个大写字母,若为 S,则表示需要求出右下半部分的元素的和,若为 M,则表示需要求出右下半部分的元素的平均值。

接下来 12 行,每行包含 12 个用空格隔开的浮点数,表示这个二维数组,其中第 i+1 行的第 j+1 个数表示数组元素 M[i][j]。

样例

输出格式

输出一个数,表示所求的平均数或和的值,保留一位小数。

数据范围

−100.0≤M[i][j]≤100.0

输入样例:

S
9.7 -4.9 6.1 -6.1 -9.6 1.0 -3.2 0.6 3.2 -9.8 4.9 1.2
-2.8 -5.3 2.8 -1.9 -5.4 7.5 -2.0 5.7 2.3 5.3 -7.5 8.9
6.0 4.3 3.8 -6.7 8.1 -0.5 7.8 -2.2 -1.0 4.0 -4.9 -9.4
5.4 3.7 -6.5 -3.9 -3.3 4.1 -2.5 -4.7 8.2 1.4 1.8 4.7
2.4 9.0 -4.3 9.6 8.6 -6.1 -7.4 8.6 5.6 0.5 -0.4 5.2
-5.2 2.9 -5.6 4.0 -0.2 3.8 -4.1 -1.6 -3.8 -3.1 -1.1 3.3
-9.4 -1.4 0.6 6.5 -4.3 -8.3 6.1 2.9 -5.2 2.5 9.8 -7.7
-2.9 -3.6 7.9 -5.8 -4.7 8.2 -6.2 1.0 7.4 -1.0 -4.4 -4.5
0.1 9.5 4.9 1.5 0.8 -8.2 0.4 9.5 -0.8 -0.9 9.7 -2.1
0.1 -7.6 7.8 -6.9 5.5 1.4 4.0 7.8 1.0 -1.2 9.7 -1.9
-4.6 2.3 -5.5 8.2 -4.8 -3.7 5.4 0.2 -2.4 -0.8 7.4 0.0
-0.1 8.2 0.8 -3.5 -7.6 -0.5 5.6 8.4 -8.6 0.9 9.0 -7.5 

输出样例:

53.0

难度:中等

时/空限制:1s / 64MB

总通过数:8791

总尝试数:16573

来源:语法题

算法标签


C++ 代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    char s;//第一行输入的一个大写字母
    cin>>s;//输入大写字母
    double m[12][12];//定义一个二维数组 M[12][12]
    for(int i=0;i<12;i++){//双重循环
        for(int j=0;j<12;j++){//
            cin>>m[i][j];//输入二维数组 M[12][12]
        }
    }
    double a=0,c=0;//右下半部分的元素的和 和 右下半的元素部分个数
    for(int i=1;i<12;i++){//
        for(int j=12-i;j<12;j++){//
            a+=m[i][j];//求右下半部分的元素的和
            c++;//右下半的元素部分个数加一
        }
    }
    if(s=='S') printf("%.1f\n",a);//若为 S 输出右下半部分的元素的和
    else printf("%.1lf\n",a/c);//若为 M 输出右下半部分的元素的平均值
}


活动打卡代码 AcWing 775. 倒排单词

Fireflylight
1个月前

AcWing 775. 倒排单词

#include<bits/stdc++.h>
using namespace std;
int main(){
    string s[100];
    int n=0;
    while(cin>>s[n]){//逐个输入字符串
        n++;//长度加一
    }
    for(int i=n-1;i>=0;i--){
        cout<<s[i]<<" ";//倒序输出
    }
    return 0;
}



Fireflylight
1个月前

题目描述

编写程序,读入一行英文(只包含字母和空格,单词间以单个空格分隔),将所有单词的顺序倒排并输出,依然以单个空格分隔。

输入格式
输入为一个字符串(字符串长度至多为 100)。

输出格式
输出为按要求排序后的字符串。

样例

输入样例:

I am a student

输出样例:

student a am I

C++ 代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    string s[100];
    int n=0;
    while(cin>>s[n]){//逐个输入字符串
        n++;//长度加一
    }
    for(int i=n-1;i>=0;i--){
        cout<<s[i]<<" ";//倒序输出
    }
    return 0;
}




Fireflylight
1个月前

题目描述

一个以 .结尾的简单英文句子,单词之间用空格分隔,没有缩写形式和其它特殊形式,求句子中的最长单词。

输入格式
输入一行字符串,表示这个简单英文句子,长度不超过 500。

输出格式
该句子中最长的单词。如果多于一个,则输出第一个。

输入样例:
I am a student of Peking University.
输出样例:
University

样例

输入样例:

I am a student of Peking University.

输出样例:

University

y总方法(逐个输入判断)

C++ 代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    string s;
    string a;
    while(cin>>s){
        if(s.back()=='.')   s.pop_back();
        if(s.size() > a.size()) a = s;
    }
    cout<<a;
}



Fireflylight
1个月前

题目描述

输入一个长度为 10 的整数数组 X[10],将里面的非正整数全部替换为 1,输出替换完成后的数组。

输入格式
输入包含 10 个整数,每个整数占一行。

输出格式
输出新数组中的所有元素,每个元素占一行。

输出格式为 X[i] = x,其中 i 为元素编号(从 0 开始),x 为元素的值。

数据范围
−100≤X[i]≤100

样例

输入样例:

10
-9
0
-4
-10
0
-2
-7
7
4

输出样例:

X[0] = 10
X[1] = 1
X[2] = 1
X[3] = 1
X[4] = 1
X[5] = 1
X[6] = 1
X[7] = 1
X[8] = 7
X[9] = 4

c++代码

#include<bits/stdc++.h>
using namespace std;
int main(){
    int x[100101];
    for(int i=0;i<10;i++){
        cin>>x[i];
    }
    for(int i=0;i<10;i++){
        if(x[i]<=0){
            x[i]=1;
        }
    }
    for(int i=0;i<10;i++){
        cout<<"X"<<"["<<i<<"] = "<<x[i]<<endl;
    }
}


活动打卡代码 AcWing 804. n 的阶乘

Fireflylight
1个月前

AcWing 804. n 的阶乘

#include<bits/stdc++.h>
using namespace std;
int fact(int n){
    int sum=1;
    for(int i=1;i<=n;i++){
        sum=sum*i;
    }
    return sum;
}
int main(){
    int n;
    cin>>n;
    cout<<fact(n);
}


活动打卡代码 AcWing 712. 正数

Fireflylight
1个月前

AcWing 712. 正数

#include<bits/stdc++.h>
using namespace std;
int main(){
    double n;
    int sum=0;
    while(cin>>n){
        if(n>0)
            sum++;
    }
    cout<<sum<<" positive numbers";
}


活动打卡代码 AcWing 712. 正数

Fireflylight
1个月前

AcWing 712. 正数

#include<bits/stdc++.h>
using namespace std;
int main(){
    double n;
    int sum=0;
    while(cin>>n){
        if(n>0)
            sum++;
    }
    cout<<sum<<" positive numbers";
}


活动打卡代码 AcWing 709. 奇数

Fireflylight
1个月前

AcWing 709. 奇数

#include<bits/stdc++.h>
using namespace std;
int main(){
    int n;
    cin>>n;
    for(int i=1;i<=n;i+=2){
        cout<<i<<endl;
    }
}