下面代码都是自己写的,因为做题系统不能立马给出代码的通过情况。所以可能存在有些条件考虑不全面的问题。若发现代码有误,欢迎在评论区指出哦~
分析:这道题,判断回文就OK
#include
#include
#include
#include
#include
using namespace std;
bool judge(int value){
stringstream ss;
ss<>str;
int len=str.length();
string s="";
for (int i=len-1;i>=0;i--){
s+=str[i];
}
if (s==str){
return true;
}
return false;
}
int main()
{
int l,r,k;
cin>>l>>r>>k;
int ans=0;
for (int i=l;i<=r;i++){
if (judge(i)&&i%k==3){
ans++;
}
}
cout<
分析:这道题我用的是全部枚举,总共16种情况,这个方法有点笨~ 做到一半突然发现可以用数组来存运算符,依次遍历这些运算符,可能代码要简洁点。
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{
// a+b?c?d
int a,b,c,d;
cin>>a>>b>>c>>d;
sets;
int value1=a+b+c-d;
int value2=a+b+c*d;
int value3=a+b+c/d;
int value4=a+b-c+d;
int value5=a+b-c*d;
int value6=a+b-c/d;
int value7=a+b*c+d;
int value8=a+b*c-d;
int value9=a+b*c/d;
int value10=a+b/c+d;
int value11=a+b/c-d;
int value12=a+b/c*d;
int value13=a+b+c+d;
int value14=a+b-c-d;
int value15=a+b*c*d;
int value16=a+b/c/d;
s.insert(value1);
s.insert(value2);
s.insert(value3);
s.insert(value4);
s.insert(value5);
s.insert(value6);
s.insert(value7);
s.insert(value8);
s.insert(value9);
s.insert(value10);
s.insert(value11);
s.insert(value12);
s.insert(value13);
s.insert(value14);
s.insert(value15);
s.insert(value16);
cout<
3:
分析:这个题的话,用优先队列就好了。优先队列存的是相邻柱子的距离,每次找出最大的距离,若要添加柱子,只能加在最大距离之间,而且最好是在最大距离的中间。还要注意距离包括从0点,也就是原点到第一颗柱子的距离和最后一颗柱子到终点的距离。
#include
#include
#include
#include
#include
#include
#include
using namespace std;
int main()
{
priority_queueq;
int len,n,m;
cin>>len>>n>>m;
int a[n+2];
a[0]=0;a[n+1]=len;
for (int i=1;i<=n;i++){
cin>>a[i];
}
for (int i=1;i
4:
分析:这个题就是用struct或者class,题目没明确告诉前N个是客户端,但我把它默认成前N个是客户端了,emm
大概思路是这样:用map来匹配info和str,用map的好处是快速找到str对应的客户端,比较方便。
比较坑的是代码段的a[i].tt=i;必须要在mmp[a[i].str]=a[i];之前,否则后面int t=temp.tt;这句话得到的t不是下标,多仔细点就OK。
#include
#include
#include
#include
#include
#include
#include
#include
5:
分析:这个题把设置陷阱的位置按递减排个序就Ok,每次都取离起点距离最大的陷阱,可以保证得到的陷阱数最少
#include
#include
#include
#include
#include
#include
#include
#include
本人菜鸡一枚,可能有很多错误或者没考虑到的地方,若有大佬发现后,请不吝赐教,欢迎在评论区指出~~