【算法笔记】重刷PAT 题解合集
生活随笔
收集整理的這篇文章主要介紹了
【算法笔记】重刷PAT 题解合集
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
乙級(jí)1001
#include<iostream> using namespace std; int main() {int n;cin >> n;int cnt = 0;while (n != 1) {cnt++;if (n % 2 == 0) {//偶數(shù)n /= 2;}else {//奇數(shù)n = (3 * n + 1) / 2;}}cout << cnt; }乙級(jí)1032
#include<iostream> using namespace std;const int maxn = 100010;//在main外面定義大數(shù)組 并且直接開到最大 int school[maxn] = { 0 };int main() {int n, schID, score;cin >> n;for (int i = 0; i < n; i++) {cin >> schID >> score;school[schID] += score;}//找到最大int k = 1, max = -1;for (int i = 1; i <= n; i++) {//這里i從1開始為了和學(xué)校編號(hào)對(duì)應(yīng) 并且實(shí)際上不存在school[0]if (school[i] > max) {k = i;max = school[i];}}cout << k << " " << school[k]; }乙級(jí)1036:圖形題,常用找規(guī)律 或 填充數(shù)組的方式輸出
#include<iostream> using namespace std;//使用填充數(shù)組的方式 const int maxn = 25; bool a[maxn][maxn] = { false };int main() {int n, n_half;char c;cin >> n >> c;//計(jì)算列if (n % 2 == 0) {n_half = n / 2;}else {n_half = (n + 1) / 2;}//填充第一行 最后一行for (int i = 0; i < n; i++) {a[0][i] = true;a[n_half - 1][i] = true;}//填充最左列 最右列for (int i = 0; i < n_half; i++) {a[i][0] = true;a[i][n - 1] = true;}//輸出數(shù)組for (int i = 0; i < n_half; i++) {//列for (int j = 0; j < n; j++) {//行if (true == a[i][j]) {cout << c;}else {cout << " ";}}cout << "\n";}system("pause"); }總結(jié)
以上是生活随笔為你收集整理的【算法笔记】重刷PAT 题解合集的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【HTML+CSS】练习:百度首页模拟
- 下一篇: Eviews学习笔记