Shanghai Computer Society Monthly Contest February 2021 Group C

Print fence

#include <iostream>
using namespace std;

int main() {
    
    
	int n, k;
	cin >> n >> k;
	
	for (int i = 1; i <= n; i ++) {
    
    
		cout << '+';
		for (int j = 1; j <= k; j ++) {
    
    
			cout << '-';
		}
	}
	cout << '+';	
	
	return 0;
}

Synthetic game

#include <iostream>
#include <cmath>
using namespace std;

int main() {
    
    
	long long n, x, sum = 0;
	
	cin >> n;
	for (int i = 1; i <= n; i ++) {
    
    
		cin >> x;
		sum += x;
	}	
	
	long long ans = 1;
	while (ans <= sum) {
    
    
		ans *= 2;
	}
	 
	cout << ans / 2;
	
	return 0;
}

Judgment of cyclic section

#include <iostream>
using namespace std;

int main() {
    
    
	string s, a;
	cin >> s >> a;
	
	int t = s.size()/a.size();
	
	string b = "";
	for (int i = 1; i <= t; i ++) {
    
    
		b += a;
	}

	if (s == b) cout << "Yes";
	else cout << "No";
	
	return 0;
}

Cut sausage

#include <iostream>
using namespace std;

int f(int n, int k) {
    
    
	if (n%k == 0) return 0;
	if (k%n == 0) return (k/n-1) * n;
	else return k/n*n + f(n%k, k%n);	
}

int main() {
    
    
	int n, k;
	cin >> n >> k;
	
	cout << f(n, k);
	return 0;
}

Self-study classroom

#include <iostream>
using namespace std;

const int N = 1e6 + 1;
int n, a[N], sum[N];

int main() {
    
    
	cin >> n;
	
	while (n --) {
    
    
		int s, t;
		cin >> s >> t;
		a[s] += 1;
		a[t+1] -= 1;
	}
	
	int maxx = 0;
	for (int i = 1; i <= 1e6; i ++) {
    
    
		sum[i] = sum[i-1] + a[i];
		maxx = max(maxx, sum[i]);
	}
	
	cout << maxx;

	return 0;
}

Guess you like

Origin blog.csdn.net/davidliule/article/details/113944561