![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
HDU
m0_50498666
这个作者很懒,什么都没留下…
展开
-
1006HDU
这道题的题目很容易懂,但要独立做出来却很难,下面的代码也是借鉴的网上的方法 方法的大致思路是这样的: 1.肯定不可能一秒一秒的算,这样将每一秒看作一点算出来肯定精度是不够的,因为时间是连续的 2.每一根针与另外两根针都有一个从重合到再重合的时间段,在这个时间段里,两根针肯定会经历一个从相距D角度到相距(360-D)角度的过程。 3.因此,枚举从0点0时0分到12点12时12分(上午0点到中午12点和中午十二点到凌晨十二点是一样的,又因为题目算的是百分比#include<iostream&.原创 2020-10-12 13:18:17 · 84 阅读 · 1 评论 -
3789HDU
1.只需要对要求排名的M个国家进行排名,其他国家直接舍弃 2.注意一下排名的方式:1,2,2,4而不是1,2,2,3 3.在给定要排序的国家号的时候,并不一定会按照从小到大的顺序给定,题目中也没有这种说明,所以最后输出的时候一定注意顺序#include<iostream>#include<vector>#include<algorithm>using namespace std;class Country { public: int number,.原创 2020-10-11 16:59:07 · 837 阅读 · 2 评论 -
2708HDU
1.多个测试样例,每一个是四行字符串 2.在图表的每一行的最后一颗星之后,不能有空格 3.每两个测试样例之间应该有换行 总体思路:1.读入字符串 2.找出字母出现次数的最大值max 3.图表除去最后的字母部分,一共应该有max行 4.画图#include<iostream>using namespace std;int main() { string a[4]; int zimu[26]; while(getline(cin,a[0])) { getline(ci.原创 2020-10-10 17:18:54 · 70 阅读 · 0 评论 -
2565HDU
1.每行的最后一个X后面没有空格#include<iostream>using namespace std;int main() { int t; cin>>t; while(t--) { int size; cin>>size; int x=0,y=size-1; while(x<=y) { for(int i=0; i<=y; i++) { if(i==x||i==y)cout<<"X"; .原创 2020-10-10 16:01:08 · 58 阅读 · 0 评论 -
2074HDU
1.每两个筐之间才有换行符,最后一个筐后面不要有换行符 2.筐的尺寸为1的时候单独考虑#include<iostream>#include<vector>using namespace std;int main() { int a,count=0; char in,out;//in是中心字符,out则为另一个字符 while(cin>>a>>in>>out) { if(count++)cout<<endl; .原创 2020-10-10 15:32:57 · 63 阅读 · 0 评论 -
1736HDU
1.string类型读入带空格字符串使用getline函数,当然,无法读入换行符,而题目中说明输入的一段文字包含换行符,因此需要用while循环来不断地读入字符串 2.唯一的难点在于双引号的转换,在给定的文字中,双引号有可能是中文字符,这点需要注意#include<iostream>#include<string>using namespace std;int main() { string a; while(getline(cin,a)) { int num=.原创 2020-10-10 14:23:56 · 64 阅读 · 0 评论 -
1509HDU
题目大意:优先级低的消息先输出 优先级一样则输出先进入队列的消息 需要这样一种数据结构 满足先进先出 能够按一定的规则对内部元素排序 最终决定使用优先队列 注意:优先队列不同于普通的队列,并不满足先进先出规则,所以需要手动添加一个数据index来记录消息的先后顺序#include<iostream>#include<queue>#include<string>#include<vector>#include<f.原创 2020-10-10 13:45:06 · 62 阅读 · 0 评论 -
1308HDU
1 判断闰年的方法,分为两种,1582年及之前是旧的规则,1582年之后是新的规则2 总的思路:根据题目中给的输出数据知道1752.9.2是星期三,1752.9.14是星期四,所以将将给的日期划分为这两段,在1752.9.2号前的日期是一种计算方法,在1752.9.14之后的是一种计算方法3计算给的日期与1752.9.2号之间有多少天或者与1752.9.14号之间有多少天,然后根据天数来确定是星期几关于天数的计算:日期在1752.9.2及之前的a.年份小于1752的b.年份等于1752月份小于.原创 2020-10-10 11:18:55 · 118 阅读 · 1 评论 -
1276HDU
超级简单的水题,用STL中的vector或者list都行#include<iostream>#include<vector>using namespace std;void baoshu(vector<int> &v,int num) { int num1=1; for(vector<int>::iterator it = v.begin(); it!=v.end();) { if(num1%num==0)it=v.erase(it);原创 2020-09-28 19:55:16 · 64 阅读 · 0 评论 -
1263HDU
简单排序题#include<iostream>#include<vector>#include<string>#include<algorithm>#include<map>using namespace std;class Sale{ public: string address; string name; int num; //注意这里的const不能少,否则会报错 bool operator==(const Sa原创 2020-09-28 15:08:22 · 85 阅读 · 0 评论 -
1256HDU
一道比较简单的画图题,将一个8拆解成5个部分就会很好理解头部,只有一行上半圆圈中部,只有一行下半圆圈尾部,只有一行其中,头部,中部,尾部完全一样需要注意的点:每一行最后一个字符后面没有空格,这也是基本的格式控制#include<iostream>using namespace std;int main(){ int n; cin>>n; char c; int a; while(n--) { cin>>c>>a;原创 2020-09-27 19:02:22 · 62 阅读 · 0 评论 -
1177HDU
#include <iostream>#include<vector>#include<string>#include<algorithm>using namespace std;class Player{ public: int index; string time; int sloved;};bool Com(Player p1,Player p2){ if(p1.sloved!=p2.sloved)return p1.slov原创 2020-09-27 18:55:14 · 90 阅读 · 0 评论 -
1129HDU
这道题相对来说比较简单#include<iostream>#include<string>#include<map>using namespace std;int main(){ int k; //用两个Map容器来存储字母和值的键值对 map<int,char> code1; code1[0]='_'; for(int i=1;i<=26;i++) { code1[i]='a'+i-1; } code1[27]='.';原创 2020-09-26 18:47:34 · 69 阅读 · 0 评论 -
1084HDU
题目很好理解,就是一道简单的排序题当然,如果只有1个人完成了4道题,下面的代码仍然会输出90分,代码依然会ac,可能是题目的测试数据太水的缘故,可以自己修改#include<iostream>#include<vector>#include<algorithm>#include<string>using namespace std;class Student { public: string time;//完成题目的时间 int slo原创 2020-09-26 16:04:52 · 63 阅读 · 0 评论 -
1332hdu
题目大意很容易搞懂 这里记录下我用到的两种方法 第一种比较常规,每个数字都有五个部分组成,分部分打印#include <iostream>using namespace std;#include <string>int main(){ int a; string b; while (cin >> a >> b && (a || b != "0")) { for (int i = 0; i < b.size.原创 2020-09-25 10:31:59 · 96 阅读 · 0 评论 -
4011HDU
这道题大概是说,人一开始在北京,在每一个特定的日子就需要返回上海。 题目说的所谓要提前一天坐飞机和在那一天之后的一天再返回没有任何意义。 去上海和返回北京都需要机票钱,最后必须返回北京,人在北京每一天都有工资,如果去了上海,那么就得不到这一天的工资。 有很多个这样需要返回上海的日子,需要判断 如果两次需要返回上海的日子的间隔期间不能挣的工资钱小于往返的机票钱,那么人就不需要返回北京 最后题目所求的最小cost总的来说就是求最少花费的钱,包括所耽误的不能挣的工资钱,往返的机票钱...原创 2020-09-24 22:58:12 · 137 阅读 · 0 评论 -
HDU1103
这个题目的大意是说有一个餐厅,里面有两人桌,四人桌,六人桌。 1-2名顾客坐两人桌,3-4名顾客坐四人桌,5-6名顾客坐六人桌。 每桌顾客吃饭要花半个小时,如果餐厅里没有空余的桌子给新顾客,新来的顾客最多可以等半个小时。 当新顾客来的时候,先看餐厅里有没有对应类型的空余的桌子,如果有,那么就直接落座。 如果没有,再看看在接下来的半小时内会不会出现空余的桌子(顾客吃完离开),只要新空出来的桌子一出现,就让等待中的顾客落座. 所以每一个桌子都应该有一个数据来记录它最近一次顾客吃完离开的时间,每当有新.原创 2020-09-24 09:58:52 · 176 阅读 · 0 评论