UVa 714 Copying Books - 二分答案
求使最大值最小,可以想到二分答案。
然后再根据题目意思乱搞一下,按要求输出斜杠(这道题觉得就这一个地方难)。
Code
- /**
- * UVa
- * Problem#12627
- * Accepted
- * Time:0ms
- */
- #include<iostream>
- #include<cstdio>
- #include<cctype>
- #include<ctime>
- #include<cstring>
- #include<cstdlib>
- #include<fstream>
- #include<sstream>
- #include<algorithm>
- #include<map>
- #include<set>
- #include<stack>
- #include<queue>
- #include<vector>
- #include<stack>
- #ifndef WIN32
- #define AUTO "%lld"
- #else
- #define AUTO "%I64d"
- #endif
- using namespace std;
- typedef bool boolean;
- #define inf 0xfffffff
- #define smin(a, b) a = min(a, b)
- #define smax(a, b) a = max(a, b)
- template<typename T>
- inline void readInteger(T& u){
- char x;
- int aFlag = ;
- while(!isdigit((x = getchar())) && x != '-');
- if(x == '-'){
- x = getchar();
- aFlag = -;
- }
- for(u = x - ''; isdigit((x = getchar())); u = (u << ) + (u << ) + x - '');
- ungetc(x, stdin);
- u *= aFlag;
- }
- int T;
- int n, a, b;
- template<typename T>
- T pow(T a, int pos) {
- if(pos == ) return ;
- if(pos == ) return a;
- T temp = pow(a, pos / );
- if(pos & ) return temp * temp * a;
- return temp * temp;
- }
- inline void init() {
- readInteger(n);
- readInteger(a);
- readInteger(b);
- }
- long long dfs(int dep, int top, int bottom) {
- if(dep == ) return ;
- if(top == && bottom == ( << dep)) return pow((long long), dep);
- int mid = << (dep - );
- if(bottom <= mid) return * dfs(dep - , top, bottom);
- if(top > mid) return dfs(dep - , top - mid, bottom - mid);
- return * dfs(dep - , top, mid) + dfs(dep - , , bottom - mid);
- }
- inline void solve() {
- long long res = dfs(n, a, b);
- printf(AUTO"\n", res);
- }
- int main() {
- readInteger(T);
- for(int kase = ; kase <= T; kase++) {
- init();
- printf("Case %d: ", kase);
- solve();
- }
- return ;
- }
UVa 714 Copying Books - 二分答案的更多相关文章
- UVA 714 Copying Books 二分
题目链接: 题目 Copying Books Time limit: 3.000 seconds 问题描述 Before the invention of book-printing, it was ...
- uva 714 Copying Books(二分法求最大值最小化)
题目连接:714 - Copying Books 题目大意:将一个个数为n的序列分割成m份,要求这m份中的每份中值(该份中的元素和)最大值最小, 输出切割方式,有多种情况输出使得越前面越小的情况. 解 ...
- UVa 714 Copying Books(二分)
题目链接: 传送门 Copying Books Time Limit: 3000MS Memory Limit: 32768 KB Description Before the inventi ...
- UVA 714 Copying Books 最大值最小化问题 (贪心 + 二分)
Copying Books Before the invention of book-printing, it was very hard to make a copy of a book. A ...
- 【NOIP提高组2015D2T1】uva 714 copying books【二分答案】——yhx
Before the invention of book-printing, it was very hard to make a copy of a book. All the contents h ...
- uva 714 - Copying Books(贪心 最大值最小化 二分)
题目描写叙述开头一大堆屁话,我还细致看了半天..事实上就最后2句管用.意思就是给出n本书然后要分成k份,每份总页数的最大值要最小.问你分配方案,假设最小值同样情况下有多种分配方案,输出前面份数小的,就 ...
- UVa 714 Copying books 贪心+二分 最大值最小化
题目大意: 要抄N本书,编号为1,2,3...N, 每本书有1<=x<=10000000页, 把这些书分配给K个抄写员,要求分配给某个抄写员的那些书的编号必须是连续的.每个抄写员的速度是相 ...
- UVA 714 Copying Books 抄书 (二分)
题意:把一个包含m个正整数的序列划分成k个非空的连续子序列.使得所有连续子序列的序列和Si的最大值尽量小. 二分,每次判断一下当前的值是否满足条件,然后修改区间.注意初始区间的范围,L应该为所有正整数 ...
- UVA - 714 Copying Books (抄书)(二分+贪心)
题意:把一个包含m个正整数的序列划分成k个(1<=k<=m<=500)非空的连续子序列,使得每个正整数恰好属于一个序列(所有的序列不重叠,且每个正整数都要有所属序列).设第i个序列的 ...
随机推荐
- iOS常用基础框架
一,简述 1.1,IOS操作系统的层次架构 iOS为应用程序开发提供了许多可使用的框架,并构成IOS操作系统的层次架构,分为四层,从上到下依次为:Cocoa Touch Layer( ...
- Spring Data 介绍 (一)
简介 Spring Data是什么 Spring Data是一个用于简化数据库访问,并支持云服务的开源框架.其主要目标是使得对数据的访问变得方便快捷 Spring Data JPA能干什么 可以极大的 ...
- Closest Common Ancestors---poj1470(LCA+离线算法)
题目链接:http://poj.org/problem?id=1470 题意是给出一颗树,q个查询,每个查询都是求出u和v的LCA: 以下是寻找LCA的预处理过程: void LCA(u){ f ...
- tomcatserver解析(五)-- Poller
在前面的分析中介绍过,Acceptor的作用是控制与tomcat建立连接的数量,但Acceptor仅仅负责建立连接.socket内容的读写是通过Poller来实现的. Poller使用java n ...
- xls的读写
import xlrd # 读取xls文件 # 打开xls文件 data = xlrd.open_workbook('x1.xls') print(type(data)) # 获取表Sheet1 ta ...
- CMSPRESS-PHP无限级分类2
原文章地址:http://www.thinkphp.cn/code/170.html 超级无限分类 使用简单 效率极高 核心代码10行不到 另外 求这个分类的不足,和更高效简单的无限分类方法 ^_^ ...
- 使用客户端等远程连接mysql数据库
1: 远程数据库(D1)数据: 数据库用户:root,数据库密码:root,数据库ip 内网地址 192.168.100.91,数据库端口 3306 本地主机:ip 192.168.127.1 ...
- Centos 6.5安装OpenSSL
方法一.直接安装 yum install openssl 方法二.下载源码编译安装 1.下载 wget https://www.openssl.org/source/openssl-1.0.2h.ta ...
- [LeetCode] 102. Binary Tree Level Order Traversal_Medium tag: BFS
Given a binary tree, return the level order traversal of its nodes' values. (ie, from left to right, ...
- React组件,React和生命周期
笔记,具体可以看看这个博客: https://segmentfault.com/a/1190000004168886?utm_source=tag-newest react 的jsx document ...