[纽劢科技笔试题]-简单模拟

 

 

题意:输入n表示有1-n这些数,当剩余两个数及以上时,输出第一个并丢弃,并把第二个添加到末尾,循环往复
```
输入: 
2          //表示两组数据
2         //表示第一组数据有1 2
7          //表示第二组数据有 1 2 3 4 5 6 7
输出:
1 2
1 3 5 7 4 2 6
```
------------------------------------------------------------

```
#include
#include
using namespace std;

int main() {
    int T;
    cin >> T;
    int temp;
    int count = 0;
    vector v;
    while (T--) {
        cin >> temp;
        for (int i = 1; i <= temp; i++) {
            v.push_back(i);
        }
        while (count < temp) {
            for (int i = 0; i < v.size(); i += 2) {
                cout << v[i] << " ";
                count++;
                if (i + 1 < v.size()) {
                    v.push_back(v[i + 1]);
                }
            }
        }
        cout << endl;
        v.clear();
    }
}
```

你可能感兴趣的:(C/C++,数据结构与算法,软件工程,计算机基础)