当前位置: 首页 > article >正文

Codeforces Round 979 (Div. 2) B. Minimise Oneness

题目链接:题目

大意:

构造长度为 n n n的01字符串,使得全为零的子序列和至少有一个1的子序列的数量之差的绝对值最小。

思路:

很明显,所有子序列中不是全为0就是至少有一个1,所以算出子序列总数,再让全为0的子序列数量接近它的一半。子序列不要求相邻,只要求相对位置不变,而在这个题目中又只需要考虑0,那么只用看0的个数。
由杨辉三角发现,长度为 n n n的子序列总数就是第 n n n层杨辉三角之和减一,而长度加一,子序列总数至少翻倍,所以0的个数为n-1就行了。

代码:

#include <bits/stdc++.h>
using namespace std;

#define int long long
#define MOD 1000000007
#define fi first
#define se second
#define pii pair<int, int>
#define vec vector

void solve(){   
    int n;
    cin >> n;
    string ans;
    for(int i = 0; i < n - 1; i++){
        ans.push_back('0');
    }
    ans.push_back('1');
    cout << ans << '\n';
}

signed main(){
    ios::sync_with_stdio(false);
    cin.tie(0);
    cout.tie(0);
    int t=1;
    cin >> t;
    while(t--){
        solve();
    }
    return 0;
}   

http://www.kler.cn/news/357780.html

相关文章:

  • WileyNJDv5_Template模板无法编译生成pdf文件
  • HTML+CSS (基础)
  • qt 序列化和反序列化
  • AI 代写是变现最快的副业项目,没有之一
  • docker harbor
  • Python学习的自我理解和想法(16)
  • 简单说说 spring构造器循环依赖 为什么无法解决(源码解析)
  • webpack 学习入门
  • Spring Boot技术:图书进销存管理的创新实践
  • AI金融攻防赛:YOLO理论学习及赛题进阶思路(DataWhale组队学习)
  • 【算法】C++中的二分查找
  • scala 抽象类
  • Python速成笔记——知识:GUI自动化控制鼠标
  • 数字化转型的难度是什么?
  • 51单片机快速入门之左移右移流水灯 2024年10/15
  • 【npm问题】报错信息
  • Android15之解决gdb:Remote register badly formatted问题(二百三十六)
  • 架构设计笔记-21-案例分析
  • unity 音频和文字转换工具分享
  • RAII - 安卓中的智能指针