程序设计新题

随机抽题程序设计 祖安钢琴师程序设计 单位名:怀化学院计算机科学与工程学院 课程名称:高级语言程序设计 团队名称:1902班第2组 祖安钢琴师 课程设计题目:随机答题程序 #一、课程设计题目基本要求介绍 这是一个简单的限时做题软件,它的功能就是在规定的时间内从题库中随机不重复地抽取一道题目给用户作答,并且对用户答题的时间进行统计,当到达规定时间或用户答完规定题数后,系统停止输出题目,并对用户答题情况进行统计输出。所... 阅读详情

 头文件&宏定义

#include <iostream>
#include <string.h>
#include <math.h>
#include <stack>
#include <queue>
#include <algorithm>
#include <cstdio>
#include <cstdlib>
#include <map>
#include <vector>
#include <set>

#define ll long long//是ll在前面
#define IOS ios::sync_with_stdio(0), cin.tie(0);

typedef pair<int,string> PICK;

using namespace std;

map<int,int> mp;
int a[120000]={0};//至少100000个数据
//小明手上的牌2
//在之前那道题的基础上改成了后面的牌每次取最小的 其实对后面的数排个序就可以了
#include <iostream>
#include <algorithm>
#include <vector>
#include <queue>
 
using namespace std;
typedef long long i64;
 
priority_queue<int,vector<int>,greater<int>> Q;
 
int main()
{
    int n,m;
    scanf("%d%d",&n,&m);
    int a[m],b[n-m];
    for(int i=0;i<m;i++)
    {
        scanf("%d",&a[i]);
        Q.push(a[i]);
    }
    for(int j=0;j<n-m;j++)
        scanf("%d",&b[j]);
    sort(b,b+n-m);
    for(int j=0;j<n-m;j++)
    {
        Q.pop();
        Q.push(b[j]);
    }
    cout<<Q.top()<<endl;
    return 0;
}
//它不是丑数
#include <iostream>
#include <algorithm>
#define homo 114514
using namespace std;
typedef long long i64;
int ugly[homo]={0};
 
int main()
{
    //先预处理ugly数组
    int l2=1,l3=1,l5=1;
    ugly[1]=1;
    for(int i=2;i<=homo;i++)
    {
        ugly[i]=min(ugly[l2]*2,min(ugly[l3]*3,ugly[l5]*5));
        if(ugly[i]==ugly[l2]*2) l2++;
        if(ugly[i]==ugly[l3]*3) l3++;
        if(ugly[i]==ugly[l5]*5) l5++;
        //这里不要手贱加上else 会少很多情况的
    }
    int T=1;
    scanf("%d",&T);
    while(T--)
    {
        int n;
        scanf("%d",&n);
        int count=0;
        int i=0;//记录第几个丑数
        while(count<n)
        {
            count=count+ugly[i+1]-ugly[i]-1;
            i++;
        }
        i--;
        count=count-(ugly[i+1]-ugly[i]-1);
        printf("%d\n",ugly[i]+n-count);
    }
    return 0;
}

//游戏高手
#include <iostream>
#include <vector>
#include <algorithm>

using namespace std;

int main() {
    int n, m;
    cin >> n >> m;

    vector<vector<int> > grid(n, vector<int>(m));
    vector<vector<int> > dp(n, vector<int>(m, 0));

    // 输入网格
    for (int i = 0; i < n; ++i) {
        for (int j = 0; j < m; ++j) {
            cin >> grid[i][j];
        }
    }

    // 初始化起点
    dp[0][0] = grid[0][0];

    // 初始化第一行
    for (int j = 1; j < m; ++j) {
        dp[0][j] = dp[0][j-1] + grid[0][j];
    }

    // 初始化第一列
    for (int i = 1; i < n; ++i) {
        dp[i][0] = dp[i-1][0] + grid[i][0];
    }

    // 填充DP表
    for (int i = 1; i < n; ++i) {
        for (int j = 1; j < m; ++j) {
            dp[i][j] = max(dp[i-1][j], dp[i][j-1]) + grid[i][j];
        }
    }

    // 输出结果
    cout << dp[n-1][m-1] << endl;

    return 0;
}
//落花清理
#include <iostream>
#include <queue>
#include <vector>

using namespace std;

int main() {
    int n;
    cin >> n;

    priority_queue<int, vector<int>, greater<int> > pq; // 最小堆
    //在声明优先队列时,将 >> 改为 > >。
    //注意这里的修改,这可以防止编译器将连续的两个 > 误认为是右移操作符。
    for (int i = 0; i < n; ++i) {
        int weight;
        cin >> weight;
        pq.push(weight);
    }

    int total_cost = 0;

    while (pq.size() > 1) {
        int first = pq.top();
        pq.pop();
        int second = pq.top();
        pq.pop();

        int combined_weight = first + second;
        total_cost += combined_weight;

        pq.push(combined_weight);
    }

    cout << total_cost << endl;

    return 0;
}
//抽到的题目的新题目  小明的手牌

//感觉考的是基础内容  很容易想到  但是要懂得基本函数的使用
//这道题用到了向量、set维护手牌(自动维护从小到大的顺序,并且允许重复数字的出现)、排序sort
//set和multiset的区别(不允许重复数字、允许重复数字)

//ms.erase(1);
//直接删除 multiset 中所有值为 1 的元素。如果 1 存在多个实例,它们都会被删除。返回值是被删除的元素的数量。
//ms.erase(ms.find(1));
//ms.find(1) 会返回一个指向值为 1 的元素的迭代器。只删除第一个找到的 1,适用于你只想删除一个特定的元素。

/*for (int x : s)
{
    cout << x << " ";
}
s 可能是 vector、set、list 或其他支持范围基 for 循环的容器类型。
int x:表示每次循环时,s 中的当前元素的值将被赋给变量 x
*/



#include <iostream>
#include <vector>
#include <set>
#include <algorithm> // 用于排序

using namespace std;
//错了两个地方
int main()
{
    int n,m;
    cin>>n>>m;

    vector<int>s(n);
    for(int i=0;i<n;i++)
    {
        cin>>s[i];
    }
    set<int>shou;
    for(int i=0;i<m;i++)
    {
        shou.insert(s[i]);
    }
    sort(s.begin()+m,s.end());
    for(int i=m;i<n;i++)//循环i的值的设置
    {
        shou.erase(shou.begin());
        shou.insert(s[i]);//这里没有用到i的值,失去了循环的意义
    }
    cout<<*shou.begin()<<endl;//因为shou是用的set定义,所以不能像s一样可以用数组输出
                              //shou.begin()返回的是迭代器,需要使用* 来获取迭代器指向的实际元素。
    return 0;
}

    // 输出手牌中最小的编号
    cout << *hand.begin() << endl;

    return 0;
}
//偷懒的士兵3

bool Check(int n, int m) {
	if (n < 3) {
		return false;
	}
	if (n == 3) {
		return true;
	}
	if (m % 2) { // 如果站位是奇数
		return Check((n + 1) / 2, (m + 1) / 2); // 去除站位是偶数的士兵
	}
	else {
		return Check(n / 2, m / 2); // 去除站位是奇数的士兵
	}
}

int main() {
	IOS;
	int n, m;
	while (cin >> n >> m && n && m) {
		cout << (Check(n, m) ? 'Y' : 'N') << endl;
	}
	return 0;
}
//校赛排名2
#include <iostream>
#include <algorithm>
#include <cstring>
 
using namespace std;
typedef long long i64;
struct team
{
    char name[20];
    bool accepted[200]={false};
    int time[200]={0};
    int all_ac=0;
    int all_time=0;
} all[100000];
bool cmp(team a,team b)
{
    if(a.all_ac==b.all_ac)
        return a.all_time<b.all_time;
    return a.all_ac>b.all_ac;
}
 
int main()
{
    int n=0;//记录总队伍数
    int now_time=0,if_ac=0;
    char team_name[20],question;
    while(scanf("%d %s %c %d",&now_time,team_name,&question,&if_ac)!=EOF)
    {
        int flag=0;//找这个队之前有没有提交过
        int i;
        for(i=0;i<n;i++)
        {
            if(!strcmp(team_name,all[i].name))
            {
                flag=1;
                break;
            }
        }
        if(flag==0)
        {
            strcpy(all[n].name,team_name);
            i=n;
            n++;
        }
        if(if_ac==0)
        {
            all[i].accepted[question]=true;
            all[i].time[question]+=now_time;
        }
        else
        {
            if(!all[i].accepted[question])
            {
                all[i].time[question]+=20;
            }
        }
    }
    for(int i=0;i<n;i++)
    {
        for(int j='A';j<='O';j++)
        {
            if(all[i].accepted[j])
            {
                all[i].all_ac++;
                all[i].all_time+=all[i].time[j];
            }
        }
    }
    sort(all,all+n,cmp);
    for(int i=0;i<n;i++)
    {
        if(all[i].all_ac==0)
            break;
        printf("%s %d %d\n",all[i].name,all[i].all_ac,all[i].all_time);
    }
    return 0;
}

2025陕西省大学生程序设计竞赛题解(8题) 看不出结论,贪心的从左上角开始选选择,分奇偶两种情况:奇数 {123456789} \left \{ \begin{matrix} \color{red}1 &\color{red}2 & 3 \\ 4 &\color{red}5 &\color{red} 6 \\ \color{red}7 & 8 &\color{red}9 \\ \end{matrix} \right\} ⎩⎨⎧​147​258​369​⎭⎬⎫​ 选择 {1,2,5,6,7,9}\{1, 2, 5, 6, 7, 9\}{1,2,5 阅读详情

相关推荐

团体程序设计天梯赛竞赛题--进阶题【L2-022 重排链表】

进阶级 4 道题,每道题 25 分,满分为 100 分。

Pretty Boy Fox的博客 256

2025年3月计算机二级C语言程序设计新题

求最大幸运数,数组中最大的数字与其出现的次数相等就为最大幸运数,例如:数组a元素为6个,分别为:1,3,3,3,1,2,最大幸运数为3,数组b元素为5个,分别为0,2,1,3,1,则没有最大幸运数,返回-1.

CYR19Gin的博客 886

手把手教你用Python实现双三次插值(附OpenCV对比测试)

本文深入解析了双三次插值算法的数学原理,并提供了从零开始的Python实现教程。通过与OpenCV官方实现的对比测试,详细评估了不同插值算法(包括最邻近差值、双线性插值)在图像质量与计算性能上的差异,帮助开发者掌握高质量图像缩放的核心技术。

weixin_29310605的博客 293

新收获——蓝桥杯单片机第十四届国赛程序设计题

大家要是,可以去看那里的系统课程,,有利于形成你自己的代码风格。笔者发文章只是的,有需要者才拿去用其中的一个。这个是,bug应该也是没有的,然后注释比较多,是的版本链接:https://pan.baidu.com/s/1IFWSZ8gDggN4YAuIGGIq2Q?pwd=1234提取码:1234,里面bug笔者是没发现有的,功能都实现了应该,因为第一次默写,所以链接:https://pan.baidu.com/s/1RtNhYbRDkt2QBoK-v5z5pg?pwd=1234。

haowei_23的博客 1366

Multisim实战:从8选1到32选1数据选择器的完整搭建指南(附常见问题解决)

本文提供了一份详尽的Multisim实战指南,手把手教你从基础的8选1数据选择器开始,逐步级联搭建16选1乃至32选1数据选择器。文章深入剖析了级联的核心逻辑、片选方案以及使用译码器的专业方法,并附带了电源连接、输出冲突、信号毛刺等常见问题的诊断与解决技巧,帮助电子工程学生和爱好者扎实掌握数字电路的系统设计与仿真调试。

dd012的博客 729

CTF命令执行绕过实战:从空格过滤到无回显外带的7种核心姿势

命令执行漏洞是Web安全中的常见高危漏洞,其核心原理在于应用程序未对用户输入进行充分过滤,导致攻击者能够注入并执行系统命令。在真实环境中,安全防护措施(如WAF、输入过滤函数)普遍存在,因此漏洞利用的关键技术在于“绕过”这些过滤机制。理解过滤器的运作逻辑(如黑名单、白名单、转义、长度限制)是成功绕过的前提。通过系统学习**空格绕过**、**命令黑名单绕过**、**编码混淆**等基础技巧,并结合**无回显外带**、**反弹Shell**等高级利用链,安全研究人员能够有效应对复杂防护场景。本文以CTFshow

weixin_29315091的博客 370

vb程序设计题(新)

文章目录 目录 系列文章目录 前言 题目 一、输出以下图案。 四、单击窗体,生成0~10之间的随机整数矩阵,分别放在两个图画框内,求两个矩阵之和放入第三个图画框内。 五、实现点餐功能,界面如图 2-1 所示。程序运行后,单击“点餐总计”按钮,实现将选餐结果显示在文本框中。​ 六、.在文本框输入大于10的偶数,找出最接近这个数的素数,输出在窗体上 七、下面程序的功能是计算,若通项分母的值>=200,停止计算(正确答案是S=1.409524) S=1+1/1*3 + 1/1*3*5..

依然,顽强 3856

解决倍福ADS通信错误1861和6:一次完整的TwinCAT3路由配置与故障排查实录

本文详细解析了在Linux系统上解决倍福ADS通信错误1861和6的完整流程,包括TwinCAT3路由配置与故障排查。通过实例演示了如何正确配置AMS NetID、使用adstool工具添加静态路由,以及高级网络抓包分析技巧,帮助工程师快速定位和解决通信问题。

weixin_30875157的博客 520

二级c语言程序设计题怎么操作,计算机等考《二级C语言程序设计》新无纸化上机操作题(套).doc...

3.2 上机操作题部分第1套上机考试试题一、程序填空题请补充函数proc(),该函数的功能是计算下面公式SN的值:例如,当N=20时,SN=29.031674。注意:部分源程序给出如下。请勿改动main()函数和其他函数中的任何内容,仅在函数proc()的横线上填入所编写的若干表达式或语句。试题程序:#include#include#includedouble proc(int n){doubl...

weixin_36443241的博客 275

基于STM32+Qt上位机设计的智慧停车场管理系统(207)

本项目设计了一套基于STM32+Qt上位机的智慧停车场管理系统。该系统融合了先进的嵌入式技术、图像识别技术、数据库技术和移动互联网技术,通过STM32硬件端实时采集车库现场信息,包括车牌识别、车位占用状态监测等,并将数据上传至Qt上位机进行处理与展示。利用MySQL数据库存储车辆出入库记录及车位使用情况,确保数据的安全性和可追溯性;通过Android手机APP为用户提供查询、支付等功能,实现远程交互与便捷服务。

3942

UNet + Shuffle Attention:一种轻量高效的医学图像分割注意力机制

本文提出了一种轻量高效的医学图像分割方法,将Shuffle Attention模块嵌入UNet的上采样路径中。Shuffle Attention通过通道分组注意力机制增强关键特征,同时保持计算轻量化。该方法在上采样后应用注意力模块,有效融合高层语义与低层细节,计算开销小且易于部署。实验表明,该模型在保持UNet原有优势的基础上,通过注意力机制提升了特征聚焦能力,适用于多种图像分割任务。未来可进一步结合空间注意力或Transformer模块以增强模型性能。

Henry的博客 240

“新智认知”杯上海高校程序设计竞赛暨第十七届上海大学程序设计春季联赛D题

链接:https://ac.nowcoder.com/acm/contest/551/D 来源:牛客网 题目描述 CSL 以前不会字符串算法,经过一年的训练,他还是不会……于是他打算向你求助。 给定一个字符串,只含有可打印字符,通过删除若干字符得到新字符串,新字符串必须满足两个条件: 原字符串中出现的字符,新字符串也必须包含。 新字符串中所有的字符均不相同。 新字符串的字典序是满足上面...

haohaoxuexilmy的博客 360

Claude Code 100个真实案例 - 用AI绘制CAD机械图纸(工程师看了直呼内行)

本案例展示如何使用 Claude Code 配合 Python 的 `ezdxf` 库,从零开始生成专业级 CAD 机械图纸。我们将绘制一个完整的法兰盘零件图,包含主视图、俯视图、标注尺寸、粗糙度标记和标题栏,最终生成标准 DXF 文件,可直接在 AutoCAD 或 FreeCAD 中打开编辑。

yueyeguzhuo的专栏 894

新倍数如何循环和两个分子相乘后并相加-代码化,《python语言程序设计》2018版--第8章20题使用Rational类求和数列

使用Rational类编写一个程序使用Rational类计算下面的求和数列21​32​43​54​65​76​87​98​109​接上集的代码。我现在得到了公倍数,如何把她分给新的分子让她们相乘并且相加呢???

贾宝不是玉 388

[QMT量化交易小白入门]-六十九、ETF动量评分策略,历史年化收益率107%

C . bar_date } 跳过') returnC . bar_date } 跳过') returnC . bar_date } 跳过') return作用:如果当前不是回测模式且不是最后一根K线,则记录日志并跳过本次任务。这是为了避免在实时交易中对尚未完成的数据进行处理。

木头大左的博客 2227

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

团体程序设计天梯赛-练习集 L1-061 新胖子公式

根据题目要求来运算就可以了。

2501_91263296的博客 221

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

程序设计 c语言 封面,C语言程序设计课程设计封面.doc

C语言程序设计课程设计报告PAGE 1C语言程序设计课程设计评语:考勤(10)纪律(10)过程(40)设计报告(30)答辩(10)总成绩(100)专 业:电气工程及其自动化班 级: 电气1404姓 名: 肖昕奥学 号: 201409032指导教师: 王黎兰州交通大学自动化与电气工程学院2014 年 7 月 15 日一 基础题:两个磁盘文件A和B,各存放...

weixin_42120283的博客 296

IEM模型,地表粗糙度模拟

利用微波反演土壤水分时候,利用IEM模型可以实现对随机地表的模拟

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

PTA 团体程序设计天梯赛 10分题 41/47/53/55/61

对方不想和你说话,并向你扔了一串数…… 而你必须从这一串数字中找到“250”这个高大上的感人数字。

LxiazichengxiL的博客 1151

ACM国际大学生程序设计竞赛试题与解析 (1)

入门三本: 《数据结构与算法》(傅清祥,王晓东编著,我所见过的最好的算法教材) 程序设计导引及在线实践 作者: 李文新 ACM程序设计培训教程 吴昊 基础提高: 算法艺术与信息学竞赛 第二版 刘汝佳 算法设计与分析 王晓东 算法设计与试验题解 王晓东 科曼:《算法导论》 组合数学 第三版 冯舜玺 译 计算几何-算法设计与分析 周培德 国际信息学奥林匹克竞赛指导— — 实用

Lemon_Chen 2014

CSL的神奇序列

上周参加了“新智认知”杯上海高校程序设计竞赛暨第十七届上海大学程序设计春季联赛,去签到打铁,在那坐了四个多小时。 题目:CSL的神奇序列 题目链接:https://ac.nowcoder.com/acm/contest/551/F 做法:可以手算一下或者打表当w分别等于1,2,3时候前四项结果就会发现规律: 当n=1时,v1=w; 当n>=2时,v[n]=v[n-1](2n-1)%99824...

weixin_43499182的博客 360

六学家的困惑(队列+string+reverse函数)——2019年华南理工大学程序设计竞赛(春季赛)

2019年华南理工大学程序设计竞赛(春季赛) 题目链接:六学家的困惑 (贪心题)题意: 给出两个数字字符串,每次选择其中一个字符串,然后从最左端或者最右端取出一个数字字符,组成一个新的数字字符串,输出最大的数字字符串。 注意:当两端相同的情况时要往里走,选择往里的一位较大的那端。 输入: 2 123456 123456 9876346789 9854894589 输出: Case #1: 6655...

道阻且长,行则将至 231

Java基于Eclipse的刷题系统研发(开题+源码)

在当今信息爆炸的时代,教育和学习的方式也在不断演变。同时,Eclipse作为一个强大的集成开发环境(IDE),为开发者提供了丰富的功能和插件,使得开发这种刷题系统变得更加容易和高效。基于Eclipse的刷题系统的意义在于它能够将学习过程游戏化,让学习者在轻松有趣的环境中学习和掌握程序设计的知识和技能。同时,该系统也旨在提高学习者的学习效率和学习成果,并为教育机构和教育者提供一种新的教学方式和工具。该系统的最终目标是让学习者在轻松有趣的环境中快速掌握程序设计的精髓和技巧,并为未来的职业发展打下坚实的基础。

qh604的博客 247

团体程序设计天梯赛——L1-048 矩阵A乘以B

团体程序设计天梯赛——L1-048 矩阵A乘以B https://pintia.cn/problem-sets/994805046380707840/problems/994805082313310208 给定两个矩阵A和B,要求你计算它们的乘积矩阵AB。需要注意的是,只有规模匹配的矩阵才可以相乘。即若A有Ra行、Ca列,B有Rb行、C​b列,则只有C​a与R​b相等时,两个矩阵才能相乘。 输入格...

NCU_CirclePlan的博客 346

2013计算机二级考试c语言试题及答案第二套,2013全国计算机等级考试新大纲二级C语言题库及参考答案...

2013年全国计算机等级考试,二级C语言,新大纲,无纸化考试,题库,真题,答案参考答案 第一套题二、程序填空题本题是根据给定的公式来计算函数的值。第一处:程序中使用双精度double类型进行计算,所以函数的返回值类型也为double,所 以应填:double。第二处:当i等于1时,则返回f1函数的值,所以应填:f1。 第三处:如果i不等于1,则返回f2函数的值,所以应填:f2。 三、程序修改题 ...

weixin_29188997的博客 184

《Java面向对象程序设计》学习笔记

备考某学校的 817程序设计Java 专业课,在学习耿祥义老师的《Java面向对象程序设计(第3版)-微课视频版》。 发一些自己的学习笔记到专栏(一篇文章对应书上一章),可能不会及时更新,见谅。 笔记可能有错误,看看就得,现在懒得浓缩精炼了,以后再说吧🧐

奇妙方程式的博客 9982

PTA 浙大版《C语言程序设计(第4版)》题目集 参考答案(函数题)

PTA 浙大版《C语言程序设计(第4版)》题目集 参考答案(函数题) 本答案配套详解教程专栏,欢迎订阅https://blog.youkuaiyun.com/weixin_40171190/category_12034686.html?spm=1001.2014.3001.5482

少侠PSY的博客 6万+
上一篇: 程序设计实验七
下一篇: Java语言基础
zero_019
博客等级 码龄3年 350粉丝 105原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

zero_019

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值