a题:题意就是问,3个数字差多少可以构成三角形

思路:两边之和大于第三遍

#include<iostream>
#include<algorithm>
using namespace std;
int a[]; int main(){
cin>>a[]>>a[]>>a[];
sort(a, a+);
int len1=a[]+a[];
int len2=a[];
int kk=;
while(len1<=len2){len1++; ++kk;}
cout<<kk<<endl;
}

b题:就是给出a的值。求出这个解的个数。

思路:比如给你a=5,则a=101, 则 x= 000, 001, 100, 101  为什么这样呢?因为只有没产生减法时的借1的情况的话,都是可以的。emmm,也就是说统计一下二进制中1出现的个数,然后,直接用组合做一下就可以了。

#include<iostream>
#include<algorithm>
using namespace std;
int k, t;
int pow(int x, int n){
int ans=;
for(;n;x=x*x, n>>=)
if(n&)ans=ans*x;
return ans;
} int main(){
cin>>t;
while(t--){
cin>>k;
int ans=;
for(int i=;i<=;++i)
if(k&(<<i))ans++;
cout<<pow(,ans)<<endl;
}
}

c题:题意,给你一个字符串,并调整各个字符的位置,新的字符串的所有子串是回文字符串的数量最多。

思路:当时,还是想了一会的,但是后来发现把所有相同的字符放在一起时,所得的子串的回文数是最多的,注意在计算时表达式应该是(n+1)*(n)/ 2

#include<iostream>
#include<algorithm>
using namespace std;
int k, t;
int pow(int x, int n){
int ans=;
for(;n;x=x*x, n>>=)
if(n&)ans=ans*x;
return ans;
} int main(){
cin>>t;
while(t--){
cin>>k;
int ans=;
for(int i=;i<=;++i)
if(k&(<<i))ans++;
cout<<pow(,ans)<<endl;
}
}

D题:

思路:就是简单的BFS,在节点里面多加个限制条件就好了。

#include<stdio.h>
#include<string.h>
#include<algorithm>
#include<queue>
using namespace std;
const int maxn=2e3+;
int n,m,sx,sy,l,r;
int dx[]={-,,,};
int dy[]={,,-,};
struct Node{
int x,y,sl,sr;
Node(){}
Node(int a,int b,int c,int d):x(a),y(b),sl(c),sr(d){}
};
char mp[maxn][maxn];
bool vis[maxn][maxn];
deque<Node> qu;
int main(){
int i,j;
scanf("%d%d",&n,&m);
scanf("%d%d",&sx,&sy);
scanf("%d%d",&l,&r);
for(i=;i<=n;i++){
scanf("%s",mp[i]+);
}
int ans=;
vis[sx][sy]=true;
//while(!qu.empty()) qu.pop();
qu.push_front(Node(sx,sy,l,r));
while(!qu.empty()){
Node no=qu.front();qu.pop_front();
for(i=;i<;i++){
int xx=no.x+dx[i];
int yy=no.y+dy[i];
if(vis[xx][yy]||xx<||xx>n||yy<||yy>m||mp[xx][yy]=='*') continue;
if(i==){
if(no.sr>=){
vis[xx][yy]=true;ans++;
qu.push_back(Node(xx,yy,no.sl,no.sr-));
}
}
else if(i==){
if(no.sl>=){
vis[xx][yy]=true;ans++;
qu.push_back(Node(xx,yy,no.sl-,no.sr));
}
}
else{
vis[xx][yy]=true;ans++;
qu.push_front(Node(xx,yy,no.sl,no.sr));
}
}
}
printf("%d\n",ans);
return ;
}

codeforces 1064套题的更多相关文章

  1. codeforces 某套题s : surf(贪心 || 动态规划)

    题目: Now that you’ve come to Florida and taken up surfing, you love it! Of course, you’ve realized th ...

  2. Educational Codeforces Round 15 套题

    这套题最后一题不会,然后先放一下,最后一题应该是大数据结构题 A:求连续最长严格递增的的串,O(n)简单dp #include <cstdio> #include <cstdlib& ...

  3. 第46套题【STL】【贪心】【递推】【BFS 图】

    已经有四套题没有写博客了.今天改的比较快,就有时间写.今天这套题是用的图片的形式,传上来不好看,就自己描述吧. 第一题:单词分类 题目大意:有n个单词(n<=10000),如果两个单词中每个字母 ...

  4. 【套题】qbxt国庆刷题班D1

    Day1 事实上D1的题目还是比较简单的= =然而D1T2爆炸了就十分尴尬--错失一波键盘 看题 T1 传送门 Description 现在你手里有一个计算器,上面显示了一个数\(S\),这个计算器十 ...

  5. Moscow Pre-Finals Workshop 2016. Japanese School OI Team Selection. 套题详细解题报告

    写在前面 谨以此篇题解致敬出题人! 真的期盼国内也能多出现一些这样质量的比赛啊.9道题中,没有一道凑数的题目,更没有码农题,任何一题拿出来都是为数不多的好题.可以说是这一年打过的题目质量最棒的五场比赛 ...

  6. Codeforces VP/补题小记 (持续填坑)

    Codeforces VP/补题小记 1149 C. Tree Generator 给你一棵树的括号序列,每次交换两个括号,维护每次交换之后的直径. ​ 考虑括号序列维护树的路径信息和,是将左括号看做 ...

  7. 套题 codeforces 359

    A题:Free Ice Cream 注意要使用LL,避免爆int #include <bits/stdc++.h> #define scan(x,y) scanf("%d%d&q ...

  8. Codeforces Round #579 (Div. 3) 套题 题解

    A. Circle of Students      题目:https://codeforces.com/contest/1203/problem/A 题意:一堆人坐成一个环,问能否按逆时针或者顺时针 ...

  9. 套题 codeforces 361

    A题((Mike and Cellphone) 看起来好像需要模拟数字键位的运动,可是,只要判断出那些必然YES的数字组合不就好了么 #include <cstdio> #include ...

随机推荐

  1. 【机器学习笔记一】协同过滤算法 - ALS

    参考资料 [1]<Spark MLlib 机器学习实践> [2]http://blog.csdn.net/u011239443/article/details/51752904 [3]线性 ...

  2. 微信小程序开发笔记

    前言: 因为前段时间一直在做关于微信小程序方面的项目,作为一名后端的攻城狮而言做一些简单的前端页面数据操作和管理还是比较容易快上手的,当然前提是要理解微信小程序的基本语法和请求原理.该篇博客主要记录的 ...

  3. 单例模式的优化之路(java)

    1.概述 最近在优化公司以前老项目的代码时,发现有些类的代码频繁地创建和销毁对象,资源消耗比较严重.针对这些做了一些优化,改用单例模式,避免频繁的创建和销毁对象,说起单例模式,相信每个人都会写,接下来 ...

  4. ASP.NET Core中使用GraphQL - 第三章 依赖注入

    ASP.NET Core中使用GraphQL ASP.NET Core中使用GraphQL - 第一章 Hello World ASP.NET Core中使用GraphQL - 第二章 中间件 SOL ...

  5. Ubuntu16.04 部署安装Docker容器 & 注意事项

    一.部署安装Docker容器 1.1 Ubuntu下安装 crul sudo apt install curl curl是利用URL语法在命令行方式下工作的开源文件传输工具.它被广泛应用在Unix.多 ...

  6. springboot~环境搭建与Helloworld

    转了,非转了 只是项目需要,从.net到java,以后可以学习java的思想把它应用到.net上来,让咱们的.net越来越强大,springbool是一个强大的框架,几乎有了你想要的所有功能模块,大叔 ...

  7. Java集合必会14问(精选面试题整理)

    前言:把这段时间复习的关于集合类的东西整理出来,特别是HashMap相关的一些东西,之前都没有很注意1.7 ->> 1.8的变化问题,但后来发现这其实变化挺大的,而且很多整理的面试资料都没 ...

  8. 推荐一款好用的任务定时器:Quartz

    前言 官网:https://www.quartz-scheduler.net/ 一款开源的任务定时器. 日常有很多地方需要定时刷新的,比如微信开发中的微信API token,或者定时清理一下缓存数据等 ...

  9. Java集合类源码解析:Vector

    [学习笔记]转载 Java集合类源码解析:Vector   引言 之前的文章我们学习了一个集合类 ArrayList,今天讲它的一个兄弟 Vector.为什么说是它兄弟呢?因为从容器的构造来说,Vec ...

  10. Vmware安装CentOs7+gitlab(二)

    在CentOS系统上安装所需的依赖:ssh,防火墙,postfix(用于邮件通知) ,wget,以下这些命令也会打开系统防火墙中的HTTP和SSH端口访问. 1.安装ssh和python sudo y ...