04
2016-10
2016-10
HDU 5920 Ugly Problem (模拟)
题目链接:点我~~
题意:给定一个不大于 10^1000 的正整数s,构造不超过50个回文数,使得这些数之和恰好是s。
思路:每次用不超过s的最大回文数去减s,这样s的位数会减半,需要实现一个高精度减法。
import java.util.*;
import java.math.BigInteger;
public class Main {
pu...
10月04日
2,677
17
2016-09
2016-09
HDU 5881 Tea (思维)
题目链接:点我~~
题意:有一壶水, 体积在 L和 R之间, 有两个杯子, 你要把水倒到两个杯子里面, 使得杯子水体积几乎相同(体积的差值小于等于1), 并且使得壶里剩下水体积不大于1. 你无法测量壶里剩下水的体积, 问最小需要倒水的次数。
思路:考虑倒水的大致过程,L=0 和 L=1 的情况应该是等价的,所以不妨设L>0。首先向一个杯子倒L/2升水,...
09月17日
2,281
26
2016-07
2016-07
HDU 5753 Permutation Bo (规律)
题目链接:点我~~
题意:~~
思路:根据期望的线性性,我们可以分开考虑每个位置对答案的贡献。
可以发现当i不在两边的时候和两端有六种大小关系,其中有两种是对答案有贡献的。
那么对答案的贡献就是ci/3。
在两端的话有两种大小关系,其中有一种对答案有贡献。
那么对答案的贡献就是ci/2。
复杂度是O(n)。
注意特判n=1的情况。
#include <...
07月26日
2,233
26
2016-07
2016-07
HDU 5752 Sqrt Bo (水题)
题目链接:点我~~
题意:~~
思路:由于有5次的这个限制,所以尝试寻找分界点。
很容易发现是2^32,所以我们先比较输入的数字是否比这个大,然后再暴力开根。
复杂度是O(loglogn)。
注意特判n=0的情况。
#include <bits/stdc++.h>
using namespace std;
typedef long long ...
07月26日
2,279
26
2016-07
2016-07
HDU 5761 Rower Bo (物理题)
题目链接:点我~~
题意:小河过船~唉
思路:比赛的时候瞎搞的~~贴下官方题解~
#include <bits/stdc++.h>
using namespace std;
int main()
{
int a,v1,v2;
while(~scanf("%d%d%d",&a,&v1,&v2))...
07月26日
2,441
29
2016-04
2016-04
HDU 5672 String (尺取法)
有一个明显的性质:如果子串(i,j)(i,j)(i,j)包含了至少kkk个不同的字符,那么子串(i,k),(j<k<length)(i,k),(j < k < length)(i,k),(j<k<length)也包含了至少kkk个不同字符。
因此对于每一个左边界,只要找到最小的满足条件的右边界,就能在O(1)O(1)O(1...
04月29日
2,187
29
2016-04
2016-04
HDU 5671 Matrix (矩阵行列交换)
对于交换行、交换列的操作,分别记录当前状态下每一行、每一列是原始数组的哪一行、哪一列即可。
对每一行、每一列加一个数的操作,也可以两个数组分别记录。注意当交换行、列的同时,也要交换增量数组。
输出时通过索引找到原矩阵中的值,再加上行、列的增量。
复杂度O(q+mn)O(q+mn)O(q+mn)
#include <bits/stdc++.h>
...
04月29日
2,322
31
2016-01
2016-01
ZOJ 2748 Free Kick (数学)
利用余弦定理把大角度算出来,然后由已知的D,求出小三角形的底,,,结果算出来有可能是负数,要取个0,太坑了,
#include<iostream>
#include<cstdio>
#include<string>
#include<string.h>
#include<algorithm>
#in...
01月31日
2,404
31
2016-01
2016-01
ZOJ 2744 Palindromes (水题)
找出一个字符串的所有回文子串
直接暴力找就好,,,
#include<iostream>
#include<cstdio>
#include<string>
#include<string.h>
#include<algorithm>
#include<cstdlib>
#include...
01月31日
2,317
26
2016-01
2016-01
LightOJ 1214 Large Division (大数取余)
。。。。无符号32位整数
import java.util.*;
import java.math.*;
public class Main {
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
BigInteger n,k;
...
01月26日
3,359