第九届蓝桥杯大赛软件赛省赛 C/C++ 大学B组
生活随笔
收集整理的這篇文章主要介紹了
第九届蓝桥杯大赛软件赛省赛 C/C++ 大学B组
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
明碼
// 387420489 #include <iostream> using namespace std;int main() {int n, m;while (cin >> n >> m){for (int i = 7; i >= 0; i -- ){if ((n >> i & 1) == 1) cout << "·";else cout << ' ';}for (int i = 7; i >= 0; i -- ){if ((m >> i & 1) == 1) cout << "·";else cout << ' ';}cout << endl;} }乘積尾零
- 分解成無法再分解的最小單元就是 2 * 5 == 10
測試次數(shù)
- 如果有i個手機,共j層,在第k層壞了,那么下一步就是i-1個手機,共k-1層;如果在第k層沒壞,那么下一步就是i個手機,共j-k層
快速排序
#include <bits/stdc++.h> using namespace std;int quick_select(int a[], int l, int r, int k) {int p = rand() % (r - l + 1) + l;int x = a[p];{int t = a[p]; a[p] = a[r]; a[r] = t;}int i = l, j = r;while(i < j) {while(i < j && a[i] < x) i++;if(i < j) {a[j] = a[i];j--;}while(i < j && a[j] > x) j--;if(i < j) {a[i] = a[j];i++;}}a[i] = x;p = i;if(i - l + 1 == k) return a[i];if(i - l + 1 < k) return quick_select(a, i + 1, r, k - (i - l + 1)); //填空else return quick_select(a, l, i - 1, k); }int main() {int a[100];int n;scanf("%d %d",&n);for(int i=0;i<n;i++)scanf("%d",&a[i]);printf("%d\n", quick_select(a, 0, n-1, 5));return 0; }遞增三元組
- 以第二個數(shù)組枚舉,隨著中間數(shù)后移,第一個數(shù)和第三個數(shù)都會跟著后移,因此,三指針
螺旋折線
總結(jié)
以上是生活随笔為你收集整理的第九届蓝桥杯大赛软件赛省赛 C/C++ 大学B组的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 计算机组成原理(哈工大刘宏伟)135讲(
- 下一篇: 浙江农林大学2021年新生杯程序设计竞赛