CF 1108A Two distinct points

题目意思:给你两个线段的起点和终点,让你给出两个不同的点,这两点分别处于两个不同的线段之中。
解题思路:题目说如果存在多种可能的点,随意一组答案即可,这样其实我们只需要取最特殊的起点即可。但要注意如果起点相同,那我们需要找一个起点一个终点。
#include<cstdio>
#include<cmath>
#include<cstring>
#define ll long long int
using namespace std;
int main()
{
int t,l1,l2,r1,r2;
scanf("%d",&t);
while(t--)
{
scanf("%d%d%d%d",&l1,&r1,&l2,&r2);
if(l1==l2)
{
printf("%d %d\n",l1,r2);
}
else
{
printf("%d %d\n",l1,l2);
}
}
return ;
}

CF  1180B Divisors(因子) of Two Integers


题目意思:给你n个数,让你从n个数中找两个数,使得剩余的n-2个数皆是这两个数的因子。
解题思路:我们知道最大的那个数必然是其中的一个解,这样我们便已经确定了一个答案了,再利用这个最大数对剩余的数取模运算,不能够整除的必然是另外的一个解了。同时如果因为因子具有唯一性,如果出现了两个相同的数,那么必然有一个是因子,一个是原解。
#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define ll long long int
using namespace std;
int my_cmp(int a,int b)
{
return a>b;
}
int main()
{
int n,i;
int a[];
scanf("%d",&n);
for(i=;i<n;i++)
{
scanf("%d",&a[i]);
}
sort(a,a+n,my_cmp);
for(i=;i<n;i++)
{
if(a[]%a[i]!=||a[i]==a[i+])
{
printf("%d %d\n",a[],a[i]);
break;
}
}
return ;
}

CF 1108C Nice Garland

题目意思:给了一个长度为n的字符串,且字符串只包含'R','B','G'三种字符,可以改变任何一个字符,使得任意两个相同的字符的距离是3的倍数,输出改动最少的操作且输出改动后的字符串。

解题思路:任意两个相同的字符的距离是3的倍数,换种说法其实就是RGBRGB这样的三个一循环,所以我们就把RGB的所有排列方式列出来然后暴力枚举找到改动最小的操作就好了。这里学到的知识是对3位一循环的处理,使用求余的方法限定范围。

#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define maxs 1000010
using namespace std;
int main()
{
char a[][]= {"RGB","RBG","BGR","BRG","GBR","GRB"};///'RGB'的排列组合
char s[maxs];
int i,j,n,counts,ans,flag;
ans=0x3f3f3f3f;
flag=-;
scanf("%d",&n);
getchar();
scanf("%s",s);
for(i=; i<; i++)
{
counts=;
for(j=; j<n; j++)
{
if(a[i][j%]!=s[j])
{
counts++;
}
}
if(counts<ans)
{
ans=counts;
flag=i;
}
}
printf("%d\n",ans);
for(i=; i<n; i++)///注意这里输出的写法
{
printf("%c",a[flag][i%]);
}
printf("\n");
return ;
}

CF 1108D Diverse Garland

题目意思:给了一个长度为n的字符串,且字符串中只包含'G','B','R'这三种字符,可以改变字符,现在要求两个相同的字符不能相连,问最小的改动次数以及改动后的字符串。

解题思路:枚举每一位字符,如果出现了前后字符相同的情况就去判断一下该字符的前一个字符和后一个字符,之后去确定将该字符修改为何种字符。

#include<cstdio>
#include<cmath>
#include<cstring>
#include<algorithm>
#define maxs 1000010
using namespace std;
char s[maxs];
int main()
{
int n,i,counts;
scanf("%d",&n);
getchar();
scanf("%s",s);
counts=;
for(i=;i<n-;i++)
{
if(s[i]==s[i+])
{
counts++;
if(s[i]!='R'&&s[i+]!='R')
{
s[i+]='R';
}
else if(s[i]!='G'&&s[i+]!='G')
{
s[i+]='G';
}
else if(s[i]!='B'&&s[i+]!='B')
{
s[i+]='B';
}
}
}
printf("%d\n",counts);
printf("%s\n",s);
return ;
}

CF刷刷水题找自信1的更多相关文章

  1. CF刷刷水题找自信 2

    CF 1114A  Got Any Grapes(葡萄)? 题目意思:给三个人分葡萄,三个人对葡萄的颜色有一些要求,问所准备的三种颜色的葡萄能否满足三人的要求. 解题意思:直接按条件判断即可. #in ...

  2. 【BZOJ】初级水题列表——献给那些想要进军BZOJ的OIers(自用,怕荒废了最后的六月考试月,刷刷水题,水水更健康)

    BZOJ初级水题列表——献给那些想要进军BZOJ的OIers 代码长度解释一切! 注:以下代码描述均为C++ RunID User Problem Result Memory Time Code_Le ...

  3. HDU 5703 Desert 水题 找规律

    已知有n个单位的水,问有几种方式把这些水喝完,每天至少喝1个单位的水,而且每天喝的水的单位为整数.看上去挺复杂要跑循环,但其实上,列举几种情况之后就会发现是找规律的题了= =都是2的n-1次方,而且这 ...

  4. 恶补一下DP+背包专题(刷刷水题)L2

    开心的金明 题目大意 就是求一定背包容量的最大值 思路 想必大家都知道,一看到这种题目,就会想起01背包 虽然特别简单但是还是讲一下吧 状态设置 由于这题差不多是一个01背包的版子题,那么我们就只需要 ...

  5. UESTCOJ-BiliBili, ACFun… And More!(水题)

    BiliBili, ACFun… And More! Time Limit: 3000/1000MS (Java/Others)     Memory Limit: 65535/65535KB (Ja ...

  6. 水题:CF16C-Monitor

    Monitor 题目描述 Reca company makes monitors, the most popular of their models is AB999 with the screen ...

  7. World Finals 2017 (水题题解)

    看大佬做2017-WF,我这种菜鸡,只能刷刷水题,勉强维持生活. 赛后补补水题. 题目pdf链接,中文的,tls翻译的,链接在这里 个人喜欢在vjudge上面刷题. E Need for Speed ...

  8. 水题 Codeforces Round #299 (Div. 2) A. Tavas and Nafas

    题目传送门 /* 很简单的水题,晚上累了,刷刷水题开心一下:) */ #include <bits/stdc++.h> using namespace std; ][] = {" ...

  9. 做了一道cf水题

    被一道cf水题卡了半天的时间,主要原因时自己不熟悉c++stl库的函数,本来一个可以用库解决的问题,我用c语言模拟了那个函数半天,结果还超时了. 题意大概就是,给定n个数,查询k次,每次查询过后,输出 ...

随机推荐

  1. iOS 使约束带动画效果(Animate NSLayoutconstraints)

    http://stackoverflow.com/questions/12926566/are-nslayoutconstraints-animatable http://stackoverflow. ...

  2. Mariadb相关

    centos下Mariadb相关 MariaDB 是一个采用 Maria 存储引擎的MySQL分支版本,是由原来 MySQL 的作者Michael Widenius创办的公司所开发的免费开源的数据库服 ...

  3. Spring MVC中如何解决POST请求中文乱码问题,GET的又如何处理呢

    在web.xml中配置过滤器 GET请求乱码解决: 在Tomcat中service.xml中

  4. 【原创】Dynamics CRM 2015/2016,以PDF的形式打开SSRS报表。

    基本步骤: 使用SSRS建立报表,以下的例子是以记录的GUID作为报表的参数 获取ReportSession 和 ControlId来调用报表 以PDF的形式预览报表 一.根据报表的名称获取报表的GU ...

  5. uva 210 - Concurrency Simulator (并行程序模拟)

    from CSDN: https://blog.csdn.net/su_cicada/article/details/87898579 例题6-1 并行程序模拟( Concurrency Simula ...

  6. HTML5 学习笔记 | LOADING...

    一.HTML5基础知识 1.1 属性规范 1)元素应当合理嵌套 2)属性最好使用““包括 3)大小写不区分 1.2 常用html5标签 1)<!DOCTYPE> 定义文档类型 2)< ...

  7. 20155210 潘滢昊 Java第一次实验---凯撒密码

    Java第一次实验---凯撒密码 实验内容 实现凯撒密码,并进行测试. 实验代码 import java.io.*; import java.util.Scanner; public class ks ...

  8. 20155217 实验二 Java面向对象程序设计 实验报告

    20155217 实验二 Java面向对象程序设计 实验报告 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模 ...

  9. 20155315实验四 Android程序设计

    实验内容 安装 Android Stuidio 学习Android Stuidio调试应用程序 实验要求 1.没有Linux基础的同学建议先学习<Linux基础入门(新版)><Vim ...

  10. 【转载】从零实现3D图像引擎:(2)画2D直线不简单

    原文:从零实现3D图像引擎:(2)画2D直线不简单 1. 数学分析 1) 画直线的问题 本来我以为画直线会很容易,随便拿个直线公式,遍历X求Y画出来不就完了么,但事实并非如此.以2D直线为例,因为3D ...