博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Codeforces Round #228 (Div. 1) 解题报告
阅读量:6809 次
发布时间:2019-06-26

本文共 2374 字,大约阅读时间需要 7 分钟。

小豪的第一次div1。

Problem A 

题意:一叠砖块每个砖块都有最大负载量,就是上面碟的砖块数不能超过负载。给你若干砖块,问你最少堆几堆?

思路:贪心题,先排序然后每次检查能不能堆在已有的砖块上,不行在新开一堆,最后输出答案即可。

代码如下:

1 //2014-02-03-23.33 2 #include 
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
13 #define MP(a, b) make_pair(a, b)14 #define PB(a) push_back(a)15 16 using namespace std;17 18 typedef long long ll;19 typedef pair
pii;20 typedef pair
puu;21 typedef pair
pid;22 typedef pair
pli;23 typedef pair
pil;24 25 const int INF = 0x3f3f3f3f;26 const double eps = 1e-6;27 const int LEN = 1010;28 int n, bn[LEN], f[LEN], b;29 30 int main()31 {32 // freopen("in.txt", "r", stdin);33 34 while(scanf("%d", &n)!=EOF){35 int ans = 1;36 memset(bn, 0, sizeof bn);37 memset(f, 0, sizeof f);38 for(int i=0; i < n; i++){39 scanf("%d", &bn[i]);40 }41 sort(bn, bn+n);42 for(int i=0; i
View Code

Problem B

题意:让你构造一个图,要求结点数不超过1000,从1-2有k条最短路。输出他的结点数和邻接矩阵。

思路:首先看k最大为1E9先想拆成2进制,显然结点太多了。然后就拆成10进制,测试后发现最多不会超过600个结点。具体细节还是看代码吧。

代码如下:

1 //2014-02-03-23.33 2 #include 
3 #include
4 #include
5 #include
6 #include
7 #include
8 #include
9 #include
10 #include
11 #include
12 #include
13 #define MP(a, b) make_pair(a, b)14 #define PB(a) push_back(a)15 16 using namespace std;17 18 typedef long long ll;19 typedef pair
pii;20 typedef pair
puu;21 typedef pair
pid;22 typedef pair
pli;23 typedef pair
pil;24 25 const int INF = 0x3f3f3f3f;26 const double eps = 1e-6;27 const int LEN = 1010;28 int Map[LEN][LEN], n;29 30 int getnew(){ return n++;}31 32 int ck(int tk){33 int ret = 0;34 while(tk){ret++; tk/=10;}35 return ret;36 }37 38 void medge(int a, int b){39 int temp = getnew();40 Map[a][temp] = Map[temp][a] = 1;41 Map[temp][b] = Map[b][temp] = 1;42 }43 44 int getkn(int num, int w){45 while(w--){46 num/=10;47 }48 return num%10;49 }50 51 int main()52 {53 // freopen("in.txt", "r", stdin);54 55 int k, s = 0, e = 1, cnt, wei[LEN];56 while(scanf("%d", &k)!=EOF){57 memset(Map, 0, sizeof Map);58 n = 2;59 cnt = ck(k);60 // cout << cnt;61 int ted, tst, temp;62 for(int i=0; i
View Code

 

转载于:https://www.cnblogs.com/shu-xiaohao/p/3537742.html

你可能感兴趣的文章
WAN killer
查看>>
大型互联网应用如何进行流量削峰,应对瞬间请求?
查看>>
我的友情链接
查看>>
TCP/UDP-路由交换原理6-【HCNA笔记】
查看>>
file文本练习
查看>>
Timer 与 DelayQueue
查看>>
Objective-C 继承新的认识以及作用
查看>>
请认真使用没有后悔药的parted分区工具
查看>>
一些web缓存相关的概念.cache-control expires no-cache no-store maxage
查看>>
NETDOM的几个用法
查看>>
java keytool工具详解
查看>>
IIS 配置 PHP 环境搭建:web 文件管理器
查看>>
PowerShell 使用当前日期创建文件夹
查看>>
计算机中结构体的内存对齐问题
查看>>
修改submin的管理员初始密码
查看>>
我的友情链接
查看>>
ubuntu/Windows双系统,在ubuntu隐藏window分区的方法
查看>>
我的友情链接
查看>>
centos6 ab性能测试web服务器
查看>>
关于Backup Exec的Agent启动失败的解决办法
查看>>