垃圾PTA:7-3 输出数组元素 (15分)

本题要求编写程序,对顺序读入的n个整数,顺次计算后项减前项之差,并按每行三个元素的格式输出结果。

输入格式:

输入的第一行给出正整数n(1<n10)。随后一行给出n个整数,其间以空格分隔。

输出格式:

顺次计算后项减前项之差,并按每行三个元素的格式输出结果。数字间空一格,行末不得有多余空格。

输入样例:

10
5 1 7 14 6 36 4 28 50 100
 

输出样例:

-4 6 7
-8 30 -32
24 22 50

 

最近补修C语言,跟大一的学弟们同台竞技.....

然后最近正好在学C++,突发奇想用C++写这个作业。正好学到迭代器和向量,直接就学以致用!

但是确实代码复杂了不少,但我感觉迭代器我会了!

PTA上面不允许上传c++代码,于是我只能够直接抄网上代码了!

然后把C++代码放出来给大家白嫖学习~

 

复制代码
#include <iostream>
#include <vector>

using namespace std;
vector<int> vec;
vector<int> temp_vec;
vector<vector<int>> ttemp_vec;

int main()
{
    int n;
    cin>>n;
    for(int i=0;i<n;i++)
    {
        int a;
        cin>>a;
        vec.push_back(a);
    }
    for(vector<int>::iterator i = vec.begin();i !=vec.end();i++)
    {
        int a=*i;
        int b = *(i+1);
        if(i+1 != vec.end())
        {
            temp_vec.push_back(b-a);
            if(temp_vec.size() == 3)
            {
                ttemp_vec.push_back(temp_vec);
                temp_vec.clear();
            }
        }
    }
    for(auto i = ttemp_vec.begin();i !=ttemp_vec.end();i++)
    {
        vector<int> ele = *i;
        for(vector<int>::iterator j = ele.begin();j !=ele.end();j++)
        {
            cout<<*j;
            if(j+1 != ele.end())
            {
                cout<<" ";
            }
        }
        if(i+1 != ttemp_vec.end())
        {
            cout<<endl;
        }
    }
    return 0;
}
 
复制代码

你嫖嫖我,我嫖嫖你,大家都是白嫖人!

posted on   大湿Mastwet  阅读(274)  评论(0编辑  收藏  举报

编辑推荐:
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示