2022年藍橋杯省賽C++B組題解-創(chuàng)新互聯(lián)

題單傳送門

成都創(chuàng)新互聯(lián)秉承實現(xiàn)全網價值營銷的理念,以專業(yè)定制企業(yè)官網,成都做網站、網站制作、成都外貿網站建設小程序開發(fā),網頁設計制作,手機網站開發(fā),全網整合營銷推廣幫助傳統(tǒng)企業(yè)實現(xiàn)“互聯(lián)網+”轉型升級專業(yè)定制企業(yè)官網,公司注重人才、技術和管理,匯聚了一批優(yōu)秀的互聯(lián)網技術人才,對客戶都以感恩的心態(tài)奉獻自己的專業(yè)和所長。九進制轉十進制
#include#include 
#include#includeusing namespace std;
 
int main(){int a = 2022, cnt = 1, ans = 0;
    while(a){ans += a % 10 * cnt;
        cnt *= 9;
        a /= 10;
    }
    cout<< ans<< endl;
    return 0;
}

在這里插入圖片描述

順子日期
#include#include 
#include#includeusing namespace std;
 
int main(){cout<< 14<< endl;
    return 0;
}

在這里插入圖片描述

刷題統(tǒng)計
#include#include 
#include#includeusing namespace std;
 
int main(){long long a, b, n;
    cin >>a >>b >>n;
    long long week = 5 * a + 2 * b;
    long long ans = n / week * 7;
    n %= week;
    for(int i = 1; i<= 7; ++i){if(n<= 0){cout<< ans<< endl;
            return 0;
        }
        switch(i){case 1:
        case 2:
        case 3:
        case 4:
        case 5:
            n -= a;
            break;
        case 6:
        case 7:
            n -= b;
        }
        ans++;
    }
    cout<< ans<< endl;
    return 0;
}

在這里插入圖片描述

修剪灌木
#include#include 
#include#include#includeusing namespace std;
 
int main(){int n;
    cin >>n;
    vectorv;
    for(int i = 1; i<= n / 2; ++i){int t = 2 * max(n - i, i);
        cout<< t<< endl;
        v.push_back(t);
    }
    if(n % 2 == 1) cout<< n - 1<< endl;
    for(int i = v.size() - 1; i >= 0; --i){cout<< v[i]<< endl;
    }
    return 0;
}

在這里插入圖片描述

X進制減法
#include#include 
#include#includeusing namespace std;
typedef long long LL;
const LL N = 1e5 + 10, MOD = 1000000007;

LL a[N], b[N];

int main(){int n, ma, mb;
	cin >>n >>ma;
	
	for(int i = ma - 1; i >= 0; --i) cin >>a[i];	
	
	cin >>mb;
	for(int i = mb - 1; i >= 0; --i) cin >>b[i];
	
	LL ans = 0;
	for(int i = max(ma, mb) - 1; i >= 0; --i)
		ans = (ans * max({1LL * 2 , a[i] + 1 , b[i] + 1}) + a[i] - b[i]) % MOD;
	
	cout<< ans<< endl;
	return 0;
}

在這里插入圖片描述

統(tǒng)計子矩陣
#include#include 
#include#includeusing namespace std;
typedef long long LL;
const int N = 510;
 
LL s[N][N];
 
int main() {LL n, m, k;
    cin >>n >>m >>k;
 
    for (int i = 1; i<= n; ++i)
        for (int j = 1; j<= m; ++j) {cin >>s[i][j];
            s[i][j] += s[i - 1][j];
        }
 
    LL ans = 0;
    for (int i = 1; i<= n; ++i)
        for (int j = i; j<= n; ++j)
            for (int l = 1, r = 1, sum = 0; r<= m; ++r) {sum += s[j][r] - s[i - 1][r];
                while (sum >k) {sum -= s[j][l] - s[i - 1][l];
                    l++;
                }
                ans += r - l + 1;
            }
 
    cout<< ans<< endl;
    return 0;
}

在這里插入圖片描述

積木畫
#include#include 
#include#includeusing namespace std;
typedef long long LL;
const int N = 1e7 + 10, mod = 1000000007;

LL f[N][3];

int main() {int n;
	cin >>n;
	
	f[0][0] = 1;
	for (int i = 1; i<= n; i++) {f[i][0] = (f[i - 1][0] + f[i - 1][1] + f[i - 1][2]) % mod;
		if (i >= 2) {	f[i][0] = (f[i][0] + f[i - 2][0]) % mod;
			f[i][1] = (f[i - 2][0] + f[i - 1][2]) % mod;
			f[i][2] = (f[i - 2][0] + f[i - 1][1]) % mod;
		}
	}
	
	cout<< f[n][0] % mod<< endl;
	return 0;
}

在這里插入圖片描述

李白打酒加強版
#include#include 
#include#includeusing namespace std;
const int N = 200, mod = 1000000007;

int f[N][N][N];

void solve() {int n, m;
	cin >>n >>m;
	memset(f, 0, sizeof f);
	f[0][0][2] = 1;
	for (int i = 1; i< n + m; ++i)
		for (int j = 0; j< m; ++j)
			for (int k = 0; k<= m; ++k) {		if (!(k & 1)) f[i][j][k] = (f[i][j][k] + f[i - 1][j][k >>1]) % mod;
				if (j >0) f[i][j][k] = (f[i][j][k] + f[i - 1][j - 1][k + 1]) % mod;
			}
	cout<< f[n + m - 1][m - 1][1]<< endl;
}

int main() {int T;
	cin >>T;
	while (T--) {solve();
	}
	return 0;
}

在這里插入圖片描述

砍竹子
#include#include 
#include#include#include#include#includeusing namespace std;
typedef pairPII;

void solve() {long long n, x;
	cin >>n;
	priority_queue, less>q;
	for(int i = 1; i<= n; ++i){cin >>x;
		if(x != 1) q.push({x, i});
	}
	long long ans = 0;
	while(!q.empty() && q.top().first != 1){auto t = q.top();
		q.pop();
		long long cnt = 1, num = sqrt(t.first / 2 + 1);
		if(num != 1) q.push({num, t.second});
		while(!q.empty() && q.top().first == t.first && q.top().second == t.second - cnt){	cnt++;
			auto temp = q.top();
			q.pop();
			if(num != 1) q.push({num, temp.second});
		}
		ans++;
	}
	cout<< ans<< endl;
}

int main() {solve();
	return 0;
}

在這里插入圖片描述

你是否還在尋找穩(wěn)定的海外服務器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準確流量調度確保服務器高可用性,企業(yè)級服務器適合批量采購,新人活動首月15元起,快前往官網查看詳情吧

本文名稱:2022年藍橋杯省賽C++B組題解-創(chuàng)新互聯(lián)
文章URL:http://bm7419.com/article34/gojpe.html

成都網站建設公司_創(chuàng)新互聯(lián),為您提供全網營銷推廣、標簽優(yōu)化網站內鏈、外貿建站品牌網站制作、網站設計公司

廣告

聲明:本網站發(fā)布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創(chuàng)新互聯(lián)

商城網站建設