HUSTOJ

这题真的不难,比赛的时候对字符串数组不熟悉

复盘感觉当时应该错了两点细节

字符串真的好多细节

C++中输入字符串的几种方法_c++输入字符串_lixiaoyu20106587的博客-CSDN博客

C++字符串的几种输入方法(string和字符数组)_c++string输入_WY.Lan的博客-CSDN博客

#include <bits/stdc++.h>
using namespace std;
const int N=15;
int n,m;
string the[N];
string a[N];
string b[N];
int main()
{scanf("%d%d",&n,&m);for(int i=0;i<n;i++){cin>>the[i];//待翻译语句 }for(int i=0;i<m;i++){cin>>a[i];getchar();//实验一下就会发现这里如果没有getchar,b[i]就成了‘\n'getline(cin,b[i]);//注意b[i]记录的是一行语句,用cin遇到空格会断开}for(int i=0;i<n;i++){for(int j=0;j<m;j++){if(the[i]==a[j]){//the[i].replace(0,sizeof the[i],b[j]);the[i]=b[j];//两种方式都对}}}for(int i=0;i<n;i++){cout<<the[i]<<" ";//待翻译语句 }return 0;
}

基本没什么逻辑,只要检查输入的对不对,调试一下,注意细节就完了。

感觉没AC的主要原因是,这题没放在签到题的位置,乐。

#define int long long

使用

如果有题目死活 WA 调不出来,可以 define 一下看看是不是溢出所导致的错误。如果是,再把 define 去掉,好好思考一下是哪里溢出了。查有没有爆int的时候,这毕竟是最快的方法。

#define int long long 以后 要写 signed main()

在OI中,将int 宏定义 为 long long是不是一种合理的技巧? - 知乎 (zhihu.com)

【C++疑问】signed main 和 int main 的区别?_ZSYL的博客-CSDN博客

缺点:

1.long long 不仅费空间,也费时间,容易 MLE/TLE

ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);

看大佬的代码真的能学到好多,这是真大佬。。。

ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);
//节省许多时间,使效率与scanf与printf相差无几.

丘丘兵团

HUSTOJ

我的第一想法是求最小子列和,然而我不会。。。

先直接copy一下大佬的代码,对着样例模拟了一下思路,妙啊妙啊这也能二分。(本蒟蒻留下了没见识的泪水。

蒟蒻分析一下,如果遍历一遍k然后再去遍历数组求和比较的话时间复杂度是On方,然而对于100%的数据,1 <= n <= 1e6, 1 <= x, ai <= 1e9,大g特g。

那就二分一遍k呗,妙啊~~~

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int N = 1e6 + 10;
int a[N], n, x;
bool check (int k) {ll sum(0);for (int i = 1; i <= n; i++) {sum += a[i];if (i < k) continue;//要加上mid个 if (sum < x) return false;//但凡存在一组的sum<x,直接返回falsesum -= a[i - k + 1];//往右边移动 }return true;//如果每一个都满足就返回true
}
void solve() {cin >> n >> x;for (int i = 1; i <= n; i++)cin >> a[i];//这里的二分相当于二分k int l = 1, r = n, res(0);while (l <= r) {int mid = (l + r) >> 1;if (check(mid)) r = (res = mid) - 1;//如果对这个mid都满足条件,那么就mid-- else l = mid + 1;}cout << res << '\n';
}
signed main() {ios::sync_with_stdio(false), cin.tie(0), cout.tie(0);//节省许多时间,使效率与scanf与printf相差无几.solve();return 0;
}

跟大佬的基本差不多,思路就是二分k,然后遍历数组求和。

#include <bits/stdc++.h>
using namespace std;
const int N=1e6+10;
int n,x;
int a[N];
long long sum;
bool check(int k)
{sum=0;for(int i=1;i<=n;i++){sum+=a[i];if(i<k) continue;//要加上x个 if(sum<x) return false;sum-=a[i-k+1];}return true;}
int main()
{scanf("%d%d",&n,&x);//数组大小,和要求的人数 for(int i=1;i<=n;i++){scanf("%d",&a[i]);} int l=1,r=n,res=0;  while(l<=r){int mid=(l+r)>>1;if(check(mid)){res=mid;r=mid-1;}else l=mid+1;}cout<<res<<endl;; return 0;
}

组合数算法

参考:C++求解组合数的具体实现_组合数c++_AlbertS的博客-CSDN博客

int combine(int n,int m)
{int ans=1;if(n==m||m==0) return 1;m=min(m,n-m);for(int i=1;i<=m;i++){ans=ans * (n-i+1) / i;}return ans;
}

【组合数算法】以及校赛小复盘相关推荐

  1. 春校赛--求索溪边树下的小瓜

    春校赛–求索溪边树下的小瓜 (10分) 题目内容: "三峡畔,长江边-"小瓜哼着校歌,慢悠悠的求索溪边散步.忽然,他在求索溪旁边发现一个非常漂亮的银杏树.于是小瓜走到树下一手拉着银 ...

  2. 大连海事大学ACM校赛题解

    大连海事大学ACM校赛题解 感谢xzx对题目的排版~ 作为出题人之一,我先简单说一下我认为的题目难度. 我觉着第一档比较容易的签到题是L.J.M,L就是向下取整的签到:J是简单思维.构造题,到了6以后 ...

  3. 范围元【2013 GDCPC】有为杯 广东ACM省赛小总结

    文章结束给大家来个程序员笑话:[M] 第一次加入生赛,心情万分激昂,我不是大牛,但是在子畦大牛的率领下,刚好排到了校赛的第20名,升级省赛. 广东的ACM省赛弄得非常好,无论是职员安排还是举办方对参赛 ...

  4. 2018 java蓝桥杯校赛题目

    1.[问题描述] 100 可以表示为带分数的形式:100 = 3 + 69258 / 714 还可以表示为:100 = 82 + 3546 / 197 注意特征:带分数中,数字1~9分别出现且只出现一 ...

  5. 2019xupt-acm校赛 题解(C.给你一个666)by出题组tongtong

    重现赛链接 2019 ACM ICPC Xi'an University of Posts & Telecommunications School Contest 前面的话 有幸参与2019X ...

  6. 2019xupt-acm校赛 题解 ( F.猜球球 ) by出题组tongtong

    重现赛链接 2019 ACM ICPC Xi'an University of Posts & Telecommunications School Contest 前面的话 有幸参与2019X ...

  7. 第一次ACM校赛_记录

    [2021-10-24]第一次ACM校赛 一.报名 1.去年比赛 2.流程 二.准备 1.核心代码模式和ACM代码模式 1.1核心代码模式 1.2 ACM代码模式 2.往年题目 3.机房环境 3.1语 ...

  8. 记第七届ACM校赛-回忆

    这一次校赛其实是两个月半之前的事情了---4月29日.那天比赛完之后,自己就想当天写写这一次比赛的事,但是由于那天比赛完之后又马上又赶回家,5个小时的比赛加上2个小时的车程,整个人都觉得很累,所以那天 ...

  9. 长沙学院2021校赛

    长沙学院2021校赛 A.小圆前辈去上学 题目 思路 代码 B.小圆前辈的素数 题目 思路 CODE C.小圆前辈去爬山 D.小圆前辈的魔法 题目 思路 代码 E.小圆前辈的排列组合 题目 思路 代码 ...

最新文章

  1. Tomcat日志中文乱码问题解决
  2. python怎么读取列表-python如何读取列表中的参数
  3. C#使用CLR/C++的DLL间接调用Native C++的DLL
  4. 计算机或与非门原理,依据基本原理构建现代计算机:从与非门到俄罗斯方块(基于项目的课程)...
  5. java算法知识点_Java知识点梳理——数据结构与算法
  6. fastjson SerializerFeature
  7. RedHat7配置本地yum源(超详细过程)
  8. 【Unity】替换场景、Prefab字体 工具类
  9. 第七次全国人口普查,数据来了!
  10. 关于彩虹猫病毒的分析
  11. FireMonkey TListView 使用 LiveBindings 绑定 TObjectList
  12. css设置行高居中,CSS line-height行高上下居中垂直居中样式属性
  13. 基于Halcon的高精度圆拟合算法思路
  14. 【数论】GDKOI day1 讲座(数论基本知识 详)
  15. (七)Python绘图基础:Matplotlib绘图
  16. linux drm 源码,Linux DRM那些事-内核代码
  17. windows系统安装PhotoshopCS6出现error16问题的解决办法
  18. “互联网+”催生农产品线交易万亿市场
  19. 【Ansys Workbench】—优化设计简介
  20. 矩阵理论| 特殊矩阵:酉矩阵、旋转与镜射

热门文章

  1. 桌面图标快捷方式不正常显示,显示空白?
  2. 动环监控系统的IO服务器,机房动环监控系统配套多路开关量IO
  3. FPGA之蜂鸣器播放音乐《花海》
  4. ERP软件31.84版本发布,一次点击实现多种操作!
  5. From Data Mining to Knowledge Discovery in Databases
  6. 记一次钓鱼网站的代码审计
  7. 人人通服务器返回为空,神州付直连接口文档新31全面值返回.pdf
  8. Bootstrap实战之新闻网
  9. 马云回国,首谈ChatGPT
  10. 第三方IDC性能测评主要指标