恍然大悟的题

简介: 恍然大悟的题

Problem - C - Codeforces

23.1.png

image.png

#include<stdio.h>
int main()
{
  int t,n,k;
  scanf("%d",&t);
  while(t--)
  {
    scanf("%d%d",&k,&n);
    int a=1;
    for(int i=1;i<=k;i++)
    {
      if(a+i-1+(k-i)<=n) a+=i-1;//k-i:可以再加上的个数
      else a++;
      printf("%d ",a);
    }
    printf("\n");
  } return 0;
}


为什么得加上k-i:


23.2.png

🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈


Problem - A - Codeforces

23.3.png

你品品

image.png

#include <bits/stdc++.h>
using namespace std;
int main() {
  cin.tie(0); cout.tie(0);
  ios::sync_with_stdio(false);
  int t;
  cin>>t;
  while(t--) {
    int n;
    cin>>n;
    vector<int> a(n);
    for(int i = 0; i < n; i++) {
      cin>>a[i];
    }
    sort(a.begin(), a.end());
    int pos = 0;
    while(pos < n && a[pos] == 1) {
      pos++;
    }
    if(pos == n) {
      cout<<pos/2+(pos%2?1:0)<<"\n";
    }else {
      cout<<pos/2+(pos%2?1:0)+(n-pos)<<"\n";
    }
  }
  return 0;
}

🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈


牛牛的星际旅行 (nowcoder.com)

23.4.png

注意本题的限制条件 重点 而且假如某件衣服是在第x天穿的,那么下一次最早能穿这件衣服的时期为x+N-1


侧面显示了第一周后穿的衣服如果在最后一周提前穿 至少要经历


(后穿的下标—前穿的下标)周

image.png

using namespace std;
int n,r,m = 0;
int a[2510],b[2510];
int main(){
    cin >>n ;
    for(int i =1;i<=n;i++){
        cin>>a[i];
    }
    for(int i =1;i<=n;i++){
        cin >>r;
        b[r]=i;//存的是位置
    }
    for(int i =1;i<=n;i++){
        m = max(m,i-b[a[i]]);
    }
    cout<<m+1;//加上本周
    return 0;
}

🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈🏳️‍🌈


Problem - A - Codeforces

23.5.png

本来以为这个题的做法很高深,其实逐个判断每个数是奇数或偶数即可


奇数+奇数+奇数=奇数


奇数+偶数+偶数=奇数

#include <bits/stdc++.h>
using namespace std;
int main()
{
    long long int t;
    cin >> t;
    while (t--)
    {
        int n;
        cin >> n;
        int a[n];
        vector<int> o;
        vector<int> e;
        int temp;
        for (int i = 0; i < n; i++)
        {
            cin >> temp;
            if (temp % 2 == 0)
                e.push_back(i + 1);
            else
                o.push_back(i + 1);
        }
        if (o.size() > 2)
        {
            cout << "YES" << endl;
            cout << o[0] << ' ' << o[1] << ' ' << o[2] << endl;
        }
        else if (o.size() > 0 && e.size() > 1)
        {
            cout << "YES" << endl;
            cout << o[0] << ' ' << e[0] << ' ' << e[1] << endl;
        }
        else
            cout << "NO" << endl;
    }
}

P1598 垂直柱状图 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)


23.6.png

 这道题特别注意细节

#include<iostream>
#include<cstring>
using namespace std;
int ff[26];//定义计数数组
int main()
{
    int i,j,n,maxn=0;
    string a;
    for(i=0;i<4;i++)
    {
        getline(cin,a);
        n=a.size();
        for(j=0;j<n;j++)
        {
          if(a[j]>='A'&&a[j]<='Z')
      ff[a[j]-'A']++;//统计字符出现次数
    }
    }
    for(i=0;i<26;i++)
  {
    maxn=max(maxn,ff[i]);//最多次数(最高柱状图)
  }
  for(i=maxn;i>0;i--)
  {
      for(j=0;j<26;j++)
      {
        if(ff[j]>=i)
      printf("* ");
      else 
      printf("  ");//模拟,是可以输出的就输出*,否则跳过
    }
    printf("\n");       
  }//换行
    for(i=0;i<26;i++)
  printf("%c ",i+'A');//输出A~Z
}

必须要有printf(' ');这一步


这一步不是不输出,是输出一个空格(空格也占一个位置),然后把后面的输出在这个空格后面


否则会变成

23.7.png

植树造林 (nowcoder.com)

23.8.png

#include<stdio.h>
int main()
{
    int n;
    scanf("%d",&n);
    if(n%2==0)
        printf("2");
    else
        printf("1");
    return 0;
}

分析这个  最远距离最小的含义

image.png

相关文章
|
算法 项目管理 C语言
嵌入式 C 语言大神的进阶之路
嵌入式 C 语言大神的进阶之路
423 0
|
供应链 安全 前端开发
【开题报告】基于JavaWeb的有机蔬菜销售系统的设计与实现
【开题报告】基于JavaWeb的有机蔬菜销售系统的设计与实现
531 0
|
数据采集 监控 安全
代理IP全解析:从原理到自建代理池的实战指南
代理IP如同网络世界的“隐形斗篷”,能隐藏真实身份,保护隐私,突破访问限制,提升数据抓取效率。本文详解代理IP的核心价值、自建代理池的技术方案、运维策略及实战应用,助你掌握数字时代的生存技能。
850 0
|
开发者 机器学习/深度学习 架构师
直播数据看板工具:流量战场的神经中枢
直播运营面临三大盲区:互动延迟、流量误判与转化流失。破局需“实时感知、来源穿透、漏斗精修”三大能力。板栗看板联合Firework、Grafana等工具,构建毫秒级响应体系,助力直播从粗放投放迈向数据化作战,实现转化效率跃升。
直播数据看板工具:流量战场的神经中枢
|
缓存 NoSQL Java
一些高频面试题
这篇文章整理了一些高频面试题
358 0
|
XML API 数据格式
深入研究:亚马逊amazon商品详情API接口Python攻略
亚马逊商品详情API(Product Advertising API)让开发者以编程方式获取亚马逊商品信息,如标题、价格、库存、评价等。功能涵盖商品基本信息、购买属性、用户反馈、分类与促销信息。使用时需选择端点(如ItemLookup或ItemSearch)、构建请求、发送至服务器并处理响应数据(JSON/XML格式),同时做好错误处理。适合电商应用开发与数据分析。
|
安全 JavaScript Java
java Web 项目完整案例实操指南包含从搭建到部署的详细步骤及热门长尾关键词解析的实操指南
本项目为一个完整的JavaWeb应用案例,采用Spring Boot 3、Vue 3、MySQL、Redis等最新技术栈,涵盖前后端分离架构设计、RESTful API开发、JWT安全认证、Docker容器化部署等内容,适合掌握企业级Web项目全流程开发与部署。
1086 0
|
JSON 小程序 JavaScript
一分钟教你学会微信小程序的页面刷新
本文指导如何在微信小程序中实现页面刷新功能。首先,在页面JSON配置开启刷新,然后在JS的`onPullDownRefresh`方法中重置数据并调用数据加载函数。在数据请求方法中,使用`wx.showLoading`显示加载提示,请求完成后用`wx.stopPullDownRefresh`结束刷新并更新数据。监听`onPullDownRefresh`事件触发数据获取。最后,自定义下拉刷新样式,并总结关键在于使用`wx.startPullDownRefresh`启动和`wx.stopPullDownRefresh`停止刷新。
2016 2
|
算法 5G
|
缓存 算法 开发者
【Conan 入门教程 】了解 Conan2.1 中内置部署策略
【Conan 入门教程 】了解 Conan2.1 中内置部署策略
575 1

热门文章

最新文章