• 洛谷刷题C语言:Bold、饱食、公平の意、DOM、


    记录洛谷刷题C语言qaq


    [COCI2020-2021#6] Bold

    题目描述

    Paula 给 Daniel 写了一封信,她需要加粗文本的字体,以便视力恶化的 Daniel 阅读。

    信可以用 .# 组成的矩阵表示。对于所有信中原有的 #,Paula 需要将其向右下方扩展为 2 × 2 2 \times 2 2×2#

    输入格式

    第一行两个整数 n , m n, m n,m,表示信的尺寸。

    接下来 n n n 行,每 m m m 个字符,表示信的内容。

    保证最后一行与最后一列中没有 #

    输出格式

    n n n 行,每行 m m m 个字符,表示加粗后的信。

    样例 #1

    样例输入 #1

    4 4
    ....
    .#..
    ....
    ....
    
    • 1
    • 2
    • 3
    • 4
    • 5

    样例输出 #1

    ....
    .##.
    .##.
    ....
    
    • 1
    • 2
    • 3
    • 4

    样例 #2

    样例输入 #2

    7 7
    .......
    .####..
    .#...#.
    .#...#.
    .#...#.
    .####..
    .......
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    样例输出 #2

    .......
    .#####.
    .######
    .##..##
    .##..##
    .######
    .#####.
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    样例 #3

    样例输入 #3

    9 7
    .......
    .####..
    .#...#.
    .#...#.
    .####..
    .#.....
    .#.....
    .#.....
    .......
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    样例输出 #3

    .......
    .#####.
    .######
    .##..##
    .######
    .#####.
    .##....
    .##....
    .##....
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    提示

    数据规模与约定

    对于 100 % 100\% 100% 的数据, 2 ≤ n , m ≤ 1 0 3 2 \le n, m \le 10^3 2n,m103。保证信中只包含 .#


    说明

    本题分值按 COCI 原题设置,满分 50 50 50

    题目译自 COCI2020-2021 CONTEST #6 T1 Bold

    代码如下

    #include
    #include
    #include
    #include 
    
    
    int n,m;
    char a[1001][1001];
    int book[1001][1001]={0};
    int main(){
    	scanf("%d%d",&n,&m);
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			scanf("\n%c",&a[i][j]);
    			if(a[i][j]=='#') book[i][j]=1;
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++){
    			if(book[i][j]==1) a[i+1][j]=a[i][j+1]=a[i+1][j+1]='#';
    		}
    	}
    	for(int i=1;i<=n;i++){
    		for(int j=1;j<=m;j++) printf("%c",a[i][j]);
    		printf("\n");
    	}
    	return 0;
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    「MCOI-05」饱食

    题目背景

    兔 21:33:19
    改下题目背景啊

    兔 21:33:21
    要符合SHZY核心价值观!!1

    一只书虫仔 21:33:35
    改成随机抽 3 个兔兔吃掉!

    题目描述

    书虫背包里有 n n n 只兔兔,第 i i i 只兔兔被书虫编号为一个由大写字母组成的字符串 S i S_i Si

    书虫会 +C+,他用 +C+ 编写出了 random 函数,随机抽取出了三只兔兔。

    不过书虫暂时得了神经性厌食症,书虫能吃下这三只兔兔当且仅当:

    • 编号的首字母为 MCOI 中的任意一个。
    • 编号的首字母不能相同。

    书虫想问有多少种选择方案使得他能吃下他选的的三只兔兔?

    输入格式

    第一行一个整数 n n n 代表兔兔个数。

    接下来 n n n 行每行一个字符串 S i S_i Si 代表一只兔兔。

    输出格式

    一行一个整数代表答案。

    样例 #1

    样例输入 #1

    5
    MINE
    CRAFT
    OLYMPIAD
    IN
    INFORMATICS
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    样例输出 #1

    7
    
    • 1

    提示

    样例 1 解释

    有如下 7 7 7 种选择方式:

    • MINECRAFTOLYMPIAD
    • MINECRAFTIN
    • MINECRAFTINFORMATICS
    • MINEOLYMPIADIN
    • MINEOLYMPIADINFORMATICS
    • CRAFTOLYMPIADIN
    • CRAFTOLYMPIADINFORMATICS

    数据规模与约定

    本题采用捆绑测试。

    • Subtask 1(10 pts): S i S_i Si 首字母均为 M
    • Subtask 2(30 pts): n ≤ 100 n \le 100 n100
    • Subtask 3(60 pts):无特殊限制。

    对于 100 % 100\% 100% 的数据, 1 ≤ n ≤ 1 0 5 1\le n\le10^5 1n105 1 ≤ ∣ S i ∣ ≤ 11 1 \le |S_i| \le 11 1Si11 S i S_i Si 由大写字母组成。

    数据不保证 S i S_i Si 互不相同。

    代码如下

    #include
    #include
    #include
    #include 
    
    
    int n;
    
    char s[17];
    
    long long s1, s2, s3, s4;
    
    int main() {
    	scanf("%d", &n);
    	
    	for (int i = 1; i <= n; i ++) {
    		scanf("%s", s + 1);
    		
    		if (s[1] == 'M') s1 ++;
    		if (s[1] == 'C') s2 ++;
    		if (s[1] == 'O') s3 ++;
    		if (s[1] == 'I') s4 ++;
    	}
    	
    	printf("%lld\n", s1 * s4 * (s2 + s3) + s2 * s3 * (s1 + s4));
    	
    	return 0; 
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28

    [COCI2012-2013#1] DOM

    题目描述

    给定一个仅包含大写字母的单词,删除该单词中的以下九个字母: C,A,M,B,R,I,D,G,E \texttt{C,A,M,B,R,I,D,G,E} C,A,M,B,R,I,D,G,E

    输入格式

    一行一个字符串,表示给定的单词。

    输出格式

    一行一个字符串,表示删除字母后的字符串。

    样例 #1

    样例输入 #1

    LOVA
    
    • 1

    样例输出 #1

    LOV
    
    • 1

    样例 #2

    样例输入 #2

    KARIJERA
    
    • 1

    样例输出 #2

    KJ
    
    • 1

    提示

    【数据范围】

    对于 100 % 100\% 100% 的数据,保证 3 ≤ 3 \le 3 单词长度 ≤ 100 \le 100 100

    【说明】

    本题分值按 COCI 原题设置,满分 50 50 50

    题目译自 COCI2012-2013 CONTEST #1 T1 DOM

    代码如下

    #include
    #include
    #include
    #include 
    
    int main()
    {
    	char s[1000];
    	scanf("%s",&s);
    	for(int i=0;i<=strlen(s);i++){
    		if(s[i]=='C' || s[i]=='A' || s[i]=='M' || s[i]=='B' || s[i]=='R' || s[i]=='I' || s[i]=='D' || s[i]=='G'|| s[i]=='E')
    			continue;
    		else
    			putchar(s[i]);
    	}
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17

    「EZEC-8」凑数

    题目描述

    给定 1 1 1 n n n n n n 个正整数,请问能否恰好选择 k k k 个数,使选中的数之和为 s s s(每个数只能用 1 1 1 次)。

    输入格式

    本题有多组数据

    第一行一个正整数 T T T,表示数据组数。

    对于每组数据,一行 3 3 3 个正整数 n , k , s n,k,s n,k,s

    输出格式

    对于每组数据:

    输出一行,一个字符串,YesNo,表示是否可以恰好选择 k k k 个数,使选中的数之和为 s s s

    样例 #1

    样例输入 #1

    3
    5 2 10
    5 2 5
    5 2 2
    
    • 1
    • 2
    • 3
    • 4

    样例输出 #1

    No
    Yes
    No
    
    • 1
    • 2
    • 3

    提示

    本题采用捆绑测试。

    • Subtask 1(15 points): n ≤ 5 n\le5 n5
    • Subtask 2(15 points): n ≤ 15 n\le15 n15
    • Subtask 3(20 points): n ≤ 100 n\le100 n100
    • Subtask 4(15 points): k = 1 k=1 k=1
    • Subtask 5(15 points): s ≤ 15 s\le15 s15
    • Subtask 6(20 points):无特殊限制。

    对于 100 % 100\% 100% 的数据, 1 ≤ T ≤ 1 0 3 1\le T\le10^3 1T103 1 ≤ k ≤ n ≤ 1 0 9 1\le k\le n\le10^9 1kn109 1 ≤ s ≤ 1 0 18 1\le s\le10^{18} 1s1018

    代码如下

    #include
    #include
    #include
    #include 
    
    
    int T;
    
    long long n,k,s,minSum,maxSum;
    
    int main()
    {
    	scanf("%d",&T);
    	while(T--)
    	{
    		scanf("%lld%lld%lld",&n,&k,&s);
    		minSum=(k*k+k)/2;
    		maxSum=(-(k*k)+(2*n+1)*k)/2; 
    		if(s>=minSum&&s<=maxSum)
    		{
    			puts("Yes");
    		}
    		else
    		{
    			puts("No");
    		}
    	}
    	return 0;
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
  • 相关阅读:
    心律守护 基于机器学习的心脏病预测
    flex布局(弹性盒子二)
    Gstreamer Plugin注册流程详解
    效果类似于 distinct 的列值去重/统计 Excel中有unique函数 numbers表格中无
    @Elasticsearch之深度应用及原理剖析--并发冲突处理机制
    oracle学习49-监听服务设置开机自启,不用一直配置监听
    github action 基于个人项目实践
    排序(堆排序、快速排序、归并排序)-->深度剖析(二)
    1.springboot开启代理
    【Python Web】Flask框架(八)前端基础整合
  • 原文地址:https://blog.csdn.net/weixin_62529383/article/details/126513820