2014秋C++第14周OJ题目参考

简介: 课程主页在http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 杨辉三角Description11 11 2 11 3 3 11 4 6 4 11 5 10 10 5 1上面的图形熟悉吗?这是大名鼎鼎的杨辉三角。杨辉三角可不只是数学游戏,在实际应用中有大用
课程主页在 http://blog.csdn.net/sxhelijian/article/details/39152703,课程资源在 云学堂“贺老师课堂”同步展示,使用的帐号请到课程主页中查看。 


杨辉三角

Description

1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
上面的图形熟悉吗?这是大名鼎鼎的杨辉三角。
杨辉三角可不只是数学游戏,在实际应用中有大用。例如两个未知数xy之和的n次方的系数问题,(x+y)^1=x+y,系数为1, 1(x+y)^2=x^2+2xy+y^2,系数是1,2,1,立方、四次方,你可以继续下去,这不就是杨辉三角的各行吗?
所以,生成了杨辉三解,解决的就是多项式展开问题。而多项式,解决的实际问题更广了。

Input

一个正整数n1<n<30

Output

输出相应层数的杨辉三角,每一层的整数之间用一个空格隔开。注意每一层最后一个数后面没有空格。

Sample Input

6

Sample Output

1 1

1 2 1 

1 3 3 1 

1 4 6 4 1 

1 5 10 10 5 1

HINT

用二维数组存储杨辉三角(实际只用左下部分)。于是可以采用下面的思路完成:

#include <iostream>

using namespace std;
 
int main()

{

int a[30][30],n;

cin>>n;

//使n行第1列和对角的元素均为1
 
//从第3行开始,按规律求和
 
//输出结果

return 0;

}

参考解答:

#include <iostream>
using namespace std;
 
int main()
{
    int a[30][30],n;
    cin>>n;
    int i,j;
    for(i=0; i<n; i++)
    {
        a[i][0]=1;
        a[i][i]=1;
    }
    for(i=0; i<n; i++)
    {
        for(j=1; j<i; j++)
            a[i][j]=a[i-1][j]+a[i-1][j-1];
    }
    for(i=0; i<n; i++)
    {
        for(j=0; j<i; j++)
            cout<<a[i][j]<<' ';
        cout<<a[i][i]<<endl;
    }
    return 0;
}

1012: 求矩阵对角线元素之和

Description

在 数学中,矩阵(Matrix)是指纵横排列的二维数据表格,最早来自于方程组的系数及常数所构成的方阵。矩阵是高等代数学中的常见工具,也常见于统计分析 等应用数学学科中。在物理学中,矩阵于电路学、力学、光学和量子物理中都有应用;计算机科学中,计机图形学、三维动画制作也需要用到矩阵。 矩阵的运算是数值分析领域的重要问题。介绍矩阵理论的线性代数课程是工程专业学生的必修科目。
用程序设计的方法解决矩阵问题,最简单的就是将矩阵用二维数组存储和处理。
下面,我们将矩阵对角线元素加起来。

Input

一个整数n,代表接下来的要输入nn列的数据,作为矩阵中的元素。(1<n<15
nn列的整数值。

Output

主对角线(多左上到右下)和副对角线(由右上到左下)元素和,两数中间用空格隔开。

Sample Input

1 2 3 

1 1 1 

3 2 1

Sample Output

3 7

 

 

参考:

#include <iostream>
using namespace std;
 
int  main()
{
    int i=0,j=0,a[15][15],s1=0,s2=0,n;
    cin>>n;
    for(i=0; i<n; i++)
        for(j=0; j<n; j++)
            cin>>a[i][j];
    for(i=0;i<n;i++){
         s1+=a[i][i];
         s2+=a[i][n-1-i];
    }
    cout<<s1<<" "<<s2<<endl;
    return 0;
}


1013: 国家排序

Description

世界格局动荡不安,10国紧急召开会议磋商对策。有些国家斤斤计较,参会代表的座位如何排定争个不停。现在给他们按字典序排列,赶紧商议正事。请编写程序,为这10国的代表排好顺序。

Input

10个国家的名字,一个国家一行

Output

排好序的国家名,一个国家一行

Sample Input

Ireland Poland Germany France Norway Korea Malaysia Thailand China Brazil

Sample Output

Brazil China France Germany Ireland Korea Malaysia Norway Poland Thailand

HINT

调试程序输入时,请用好DOS窗口左上角的编辑功能,以提高工作效率。

 

参考解答

#include <iostream>
using namespace std;
const int N=10;
int main( )
{
    int i,j;
    string t,str[N];
    for(i=0; i<N; i++)
        cin>>str[i];
    for (j=0; j<N-1; j++)
        for(i=0; i<=N-j-1; i++)
            if (str[i]>str[i+1])
            {
                t=str[i];
                str[i]=str[i+1];
                str[i+1]=t;
            }
    for(i=0; i<N; i++)
        cout<<str[i]<<endl;
    cout<<endl;
    return 0;
}


 




=================== 迂者 贺利坚 CSDN博客专栏=================
|== IT学子成长指导专栏 专栏文章的分类目录(不定期更新) ==|
|== C++ 课堂在线专栏  贺利坚课程教学链接(分课程年级) ==|
|== 我写的书——《逆袭大学——传给IT学子的正能量》    ==|
===== 为IT菜鸟起飞铺跑道,和学生一起享受快乐和激情的大学 =====


目录
相关文章
|
1月前
|
C++
C++:OJ练习(每日练习系列)
C++:OJ练习(每日练习系列)
34 2
|
3月前
|
C++
c++:string相关的oj题(把字符串转换成整数、344.反转字符串、387. 字符串中的第一个唯一字符、917. 仅仅反转字母)
c++:string相关的oj题(把字符串转换成整数、344.反转字符串、387. 字符串中的第一个唯一字符、917. 仅仅反转字母)
54 0
|
1月前
|
Shell C++
C++:OJ练习(每日练习系列)
C++:OJ练习(每日练习系列)
26 1
|
1月前
|
Serverless C++
C++:OJ练习(每日练习!)
C++:OJ练习(每日练习!)
33 0
|
3月前
|
C++ 索引
c++:string相关的oj题(415. 字符串相加、125. 验证回文串、541. 反转字符串 II、557. 反转字符串中的单词 III)
c++:string相关的oj题(415. 字符串相加、125. 验证回文串、541. 反转字符串 II、557. 反转字符串中的单词 III)
42 0
|
8天前
|
C++
面向对象的C++题目以及解法2
面向对象的C++题目以及解法2
17 1
|
2月前
|
监控 C++
【2021全国高校计算机能力挑战赛C++题目】17.信息整理 某机房上线了一套系统,和每台计算机都相连,以便监控各计算机相关外设的运行状态。
【2021全国高校计算机能力挑战赛C++题目】17.信息整理 某机房上线了一套系统,和每台计算机都相连,以便监控各计算机相关外设的运行状态。
|
3月前
|
Linux C++ iOS开发
C++类相关oj题目分享(计算日期到天数转换、日期差值、打印日期、日期累加)
C++类相关oj题目分享(计算日期到天数转换、日期差值、打印日期、日期累加)
44 0
|
3月前
|
存储 C++ 容器
『 C++ 』二叉树进阶OJ题(下)
『 C++ 』二叉树进阶OJ题(下)
|
4天前
|
存储 编译器 C语言
c++的学习之路:5、类和对象(1)
c++的学习之路:5、类和对象(1)
19 0