当前位置:网站首页>CDZSC_ 2022 winter vacation personal training match level 21 (1)
CDZSC_ 2022 winter vacation personal training match level 21 (1)
2022-07-07 09:48:00 【moyangxian】
A
The question : A little
Answer key : take n Divide the sum of the numbers by n that will do .
#include<bits/stdc++.h>
using namespace std;
signed main(){
int n;
scanf("%d", &n);
int sum = 0;
for(int i = 1; i <= n; i++){
int x;
scanf("%d", &x);
sum += x;
}
printf("%.10f\n", sum * 1.0 / n);
return 0;
}
B
The question : A little
Answer key : Since the minimum value is required , So give priority to large denomination money .
#include<bits/stdc++.h>
using namespace std;
int a[] = {
100, 20, 10, 5, 1};
signed main(){
int n;
scanf("%d", &n);
int ans = 0;
for(int i = 0; i < 5; i++){
ans += n / a[i];
n %= a[i];
}
printf("%d\n", ans);
return 0;
}
C
The question : A little
Knowledge point :STL Application
Answer key : Splice the string with yourself , Equivalent to length times 2; for example :abcd -> abcdabcd
Then take out each one with a length of len( The length of the original string ) String , use map Just record it .
#include<bits/stdc++.h>
using namespace std;
map<string, int> mp;
signed main(){
string s;
cin >> s;
int len = s.length();
s += s;
int ans = 0;
for(int i = 0; i < len; i++){
string t = s.substr(i, len);
if(mp[t] == 0) ans++;
mp[t]++;
}
printf("%d\n", ans);
return 0;
}
D
The question : A little
Answer key : because 6 = 2 * 3, So take a ride 2 except 6 The operation of is equivalent to dividing by 3, So the operation turns into a one-step operation to n Divide 6 Or two steps will n Divide 3, If n It cannot be changed into 1 There is no solution. .
#include<bits/stdc++.h>
using namespace std;
void solve(){
int n;
scanf("%d", &n);
int ans = 0;
while(true){
if(n % 6 == 0){
n /= 6;
ans++;
}
else if(n % 3 == 0){
n /= 3;
ans += 2;
}
else{
break;
}
}
if(n == 1) printf("%d\n", ans);
else printf("-1\n");
}
signed main(){
int T;
scanf("%d", &T);
while(T--) solve();
return 0;
}
E
The question : A little
Answer key : Choose the smallest number each time to subtract , It is equivalent to subtracting each number after arranging the array in order , And if a number appears many times, it will only be subtracted once . For each of these a[i] for , The array subtracts the difference between it and the previous one , namely a[i] - a[i - 1]
#include<bits/stdc++.h>
using namespace std;
const int N = 1e5 + 10;
int a[N];
signed main(){
int n, k;
scanf("%d%d", &n, &k);
for(int i = 1; i <= n; i++)
scanf("%d", &a[i]);
sort(a + 1, a + 1 + n);
n = unique(a + 1, a + 1 + n) - a - 1;
for(int i = 1; i <= k; i++){
if(i <= n) printf("%d\n", a[i] - a[i - 1]);
else printf("0\n");
}
return 0;
}
F
The question : A little
Answer key : If n The sum of the numbers is not 0, Then I will n The number can be divided into one section . If n The sum of the numbers is 0, Then find the last not for 0 Number of numbers ( Subscript to be pos), take (1,pos - 1) Divide into sections ,(pos, n) It can be divided into sections .
#include<bits/stdc++.h>
using namespace std;
const int N = 110;
int a[N];
signed main(){
int n;
scanf("%d", &n);
int sum = 0;
for(int i = 1; i <= n; i++){
scanf("%d", &a[i]);
sum += a[i];
}
if(sum){
printf("YES\n");
printf("1\n");
printf("1 %d\n", n);
}
else{
int pos = -1;
for(int i = 1; i <= n; i++)
if(a[i]) pos = i;
if(pos == -1) printf("NO\n");
else{
printf("YES\n");
printf("2\n");
printf("1 %d\n", pos - 1);
printf("%d %d\n", pos, n);
}
}
return 0;
}
G
The question : A little
Answer key : Because the array finally forms an arithmetic sequence , We can enumerate a[1] You can know the value of the entire array , Compare the obtained array with the original array , Record the number of different numbers , The answer is the optimal solution .
#include<bits/stdc++.h>
using namespace std;
const int N = 1010;
int a[N], b[N], t[N];
signed main(){
int n, k;
scanf("%d%d", &n, &k);
for(int i = 1; i <= n; i++)
scanf("%d", &a[i]);
int ans = n;
for(int i = 1; i <= 1000; i++){
b[1] = i;
int cnt = 0;
for(int j = 1; j <= n; j++){
b[j] = b[1] + (j - 1) * k;
if(b[j] != a[j]) cnt++;
}
if(cnt < ans){
memcpy(t, b, sizeof(b));
ans = cnt;
}
}
printf("%d\n", ans);
for(int i = 1; i <= n; i++){
if(t[i] > a[i]) printf("+ %d %d\n", i, t[i] - a[i]);
else if(t[i] < a[i]) printf("- %d %d\n", i, a[i] - t[i]);
}
return 0;
}
边栏推荐
- Dynamics 365online applicationuser creation method change
- thinkphp数据库的增删改查
- 印象笔记终于支持默认markdown预览模式
- 根据热门面试题分析Android事件分发机制(一)
- How does mongodb realize the creation and deletion of databases, the creation of deletion tables, and the addition, deletion, modification and query of data
- flinkcdc采集oracle在snapshot阶段一直失败,这个得怎么调整啊?
- 小程序弹出半角遮罩层
- How to speed up video playback in browser
- 创建一个长度为6的int型数组,要求数组元素的值都在1-30之间,且是随机赋值。同时,要求元素的值各不相同。
- NATAPP内网穿透
猜你喜欢

基础篇:带你从头到尾玩转注解

Over 100000 words_ Ultra detailed SSM integration practice_ Manually implement permission management

Information Security Experiment 3: the use of PGP email encryption software

Unity shader (learn more about vertex fragment shaders)

esp8266使用TF卡并读写数据(基于arduino)

【原创】程序员团队管理的核心是什么?

Octopus future star won a reward of 250000 US dollars | Octopus accelerator 2022 summer entrepreneurship camp came to a successful conclusion

Information Security Experiment 4: implementation of IP packet monitoring program

Basic use of JMeter to proficiency (I) creation and testing of the first task thread from installation

使用BigDecimal的坑
随机推荐
Information Security Experiment 2: using x-scanner scanning tool
Information Security Experiment 1: implementation of DES encryption algorithm
大佬们,请问 MySQL-CDC 有什么办法将 upsert 消息转换为 append only 消
大佬们,有没有遇到过flink cdc读MySQLbinlog丢数据的情况,每次任务重启就有概率丢数
Unity shader (learn more about vertex fragment shaders)
sql 里面使用中文字符判断有问题,哪位遇到过?比如value&lt;&gt;`无`
Liunx command
Information Security Experiment 3: the use of PGP email encryption software
VSCode+mingw64
基础篇:带你从头到尾玩转注解
基于智慧城市与储住分离数字家居模式垃圾处理方法
Can flycdc use SqlClient to specify mysqlbinlog ID to execute tasks
How to use clipboard JS library implements copy and cut function
The difference between viewpager2 and viewpager and the implementation of viewpager2 in the rotation chart
Communication mode between processes
农牧业未来发展蓝图--垂直农业+人造肉
【BW16 应用篇】安信可BW16模组/开发板AT指令实现MQTT通讯
JS reverse tutorial second issue - Ape anthropology first question
How will fashion brands enter the meta universe?
How to become a senior digital IC Design Engineer (5-3) theory: ULP low power design technology (Part 2)