折线中点

  1. #pragma comment(linker, "/STACK:102400000,102400000")
  2. #include<stdio.h>
  3. #include<string.h>
  4. #include<stdlib.h>
  5. #include<vector>
  6. #include<algorithm>
  7. #include<iostream>
  8. #include<map>
  9. #include<queue>
  10. #include<stack>
  11. #include<string>
  12. #include<functional>
  13. #include<math.h>
  14. //#include<bits/stdc++.h>
  15. using namespace std;
  16. typedef long long lint;
  17. typedef vector<int> VI;
  18. typedef pair<int, int> PII;
  19. typedef queue<int> QI;
  20.  
  21. void makedata() {
  22. freopen("input.txt", "w", stdout);
  23. fclose(stdout);
  24. }
  25.  
  26. double x[], y[];
  27.  
  28. int main() {
  29. #ifndef ONLINE_JUDGE
  30. freopen("input.txt", "r", stdin);
  31. #endif
  32. //makedata();
  33. //std::ios::sync_with_stdio(0), cin.tie(0);
  34. int n;
  35. scanf("%d", &n);
  36. for (int i = ; i < n; i++) scanf("%lf%lf", &x[i], &y[i]);
  37. double l = ;
  38. for (int i = ; i < n; i++) l += sqrt((x[i] - x[i - ]) * (x[i] - x[i - ]) + (y[i] - y[i - ]) * (y[i] - y[i - ]));
  39. l /= 2.0;
  40. for (int i = ; i < n; i++) {
  41. double tmp = sqrt((x[i] - x[i - ]) * (x[i] - x[i - ]) + (y[i] - y[i - ]) * (y[i] - y[i - ]));
  42. if (l > tmp) l -= tmp;
  43. else {
  44. printf("%.1lf %.1lf\n", x[i - ] + (l / tmp) * (x[i] - x[i - ]), y[i - ] + (l / tmp) * (y[i] - y[i - ]));
  45. break;
  46. }
  47. }
  48. return ;
  49. }

最小先序遍历

  1. #pragma comment(linker, "/STACK:102400000,102400000")
  2. #include<stdio.h>
  3. #include<string.h>
  4. #include<stdlib.h>
  5. #include<vector>
  6. #include<algorithm>
  7. #include<iostream>
  8. #include<map>
  9. #include<queue>
  10. #include<stack>
  11. #include<string>
  12. #include<functional>
  13. #include<math.h>
  14. //#include<bits/stdc++.h>
  15. using namespace std;
  16. typedef long long lint;
  17. typedef vector<int> VI;
  18. typedef pair<int, int> PII;
  19. typedef queue<int> QI;
  20.  
  21. void makedata() {
  22. freopen("input.txt", "w", stdout);
  23. fclose(stdout);
  24. }
  25.  
  26. int a[];
  27. void solve(int l, int r) {
  28. if (l > r) return;
  29. int x = l;
  30. for (int i = l; i <= r; i++) {
  31. if (a[i] < a[x]) x = i;
  32. }
  33. cout << a[x] << endl;
  34. solve(l, x - );
  35. solve(x + , r);
  36. }
  37.  
  38. int main() {
  39. #ifndef ONLINE_JUDGE
  40. freopen("input.txt", "r", stdin);
  41. #endif
  42. //makedata();
  43. std::ios::sync_with_stdio(), cin.tie();
  44. int n;
  45. cin >> n;
  46. for (int i = ; i <= n; i++) cin >> a[i];
  47. solve(, n);
  48. return ;
  49. }

假期计划

  1. #pragma comment(linker, "/STACK:102400000,102400000")
  2. #include<stdio.h>
  3. #include<string.h>
  4. #include<stdlib.h>
  5. #include<vector>
  6. #include<algorithm>
  7. #include<iostream>
  8. #include<map>
  9. #include<queue>
  10. #include<stack>
  11. #include<string>
  12. #include<functional>
  13. #include<math.h>
  14. //#include<bits/stdc++.h>
  15. using namespace std;
  16. typedef long long lint;
  17. typedef vector<int> VI;
  18. typedef pair<int, int> PII;
  19. typedef queue<int> QI;
  20.  
  21. void makedata() {
  22. freopen("input.txt", "w", stdout);
  23. fclose(stdout);
  24. }
  25.  
  26. class AandC {
  27. public:
  28. long long *fac, *inv, *f;
  29. long long mod;
  30. AandC(long long m, int n) {
  31. mod = m;
  32. fac=(long long *)malloc((n) * sizeof(long long));
  33. inv=(long long *)malloc((n) * sizeof(long long));
  34. f=(long long *)malloc((n) * sizeof(long long));
  35. fac[] = fac[] = inv[] = inv[] = f[] = f[] = ;
  36. for (int i = ; i < n; i++) {
  37. fac[i] = fac[i - ] * i % mod;
  38. f[i] = (mod - mod / i) * f[mod % i] % mod;
  39. inv[i] = inv[i - ] * f[i] % mod;
  40. }
  41. }
  42. //choose b from a
  43. long long A(int a, int b) {
  44. return fac[a] * inv[a - b] % mod;
  45. }
  46. long long C(int a, int b) {
  47. return fac[a] * inv[b] % mod * inv[a - b] % mod;
  48. }
  49. };
  50. const lint mod = ;
  51. AandC ac(mod,);
  52.  
  53. int main() {
  54. #ifndef ONLINE_JUDGE
  55. freopen("input.txt", "r", stdin);
  56. #endif
  57. //makedata();
  58. std::ios::sync_with_stdio(), cin.tie();
  59. int n, a, b;
  60. cin >> n >> a >> b;
  61. lint ans = ;
  62. for (int i = ; i < n; i++) {
  63. if (i > b || n - i > a || n - i < ) continue;
  64. ans += (n - i - ) * ac.C(b - , i - ) % mod * ac.C(a - , n - i - ) % mod * ac.A(a, a) % mod * ac.A(b, b) % mod;
  65. ans %= mod;
  66. }
  67. cout << ans << endl;
  68. return ;
  69. }

矩阵深度

[hihocoder][Offer收割]编程练习赛48的更多相关文章

  1. hihocoder [Offer收割]编程练习赛4

    描述 最近天气炎热,小Ho天天宅在家里叫外卖.他常吃的一家餐馆一共有N道菜品,价格分别是A1, A2, ... AN元.并且如果消费总计满X元,还能享受优惠.小Ho是一个不薅羊毛不舒服斯基的人,他希望 ...

  2. hihocoder [Offer收割]编程练习赛61

    [Offer收割]编程练习赛61 A:最小排列 给定一个长度为m的序列b[1..m],再给定一个n,求一个字典序最小的1~n的排列A,使得b是A的子序列. 贪心即可,b是A的子序列,把不在b中的元素, ...

  3. ACM学习历程—Hihocoder [Offer收割]编程练习赛1

    比赛链接:http://hihocoder.com/contest/hihointerview3/problem/1 大概有一个月没怎么打算法了.这一场的前一场BC,也打的不是很好.本来Div1的A和 ...

  4. [Offer收割]编程练习赛48

    题目1 : 折线中点 时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 给定平面上N个点P1, P2, ... PN,将他们按顺序连起来,形成一条折线. 请你求出这条折线的 ...

  5. hihocoder offer收割编程练习赛8 C 数组分拆

    思路:(引自bfsoyc的回答:http://hihocoder.com/discuss/question/4160) 动态规划.状态dp[i]表示 前i个数的合法的方案数,转移是 dp[i] = s ...

  6. hihocoder [Offer收割]编程练习赛18 C 最美和弦(dp)

    题目链接:http://hihocoder.com/problemset/problem/1532 题解:一道基础的dp,设dp[i][j][k][l]表示处理到第几个数,当前是哪个和弦错了几次初始x ...

  7. hihoCoder [Offer收割]编程练习赛3 D子矩阵求和

    子矩阵求和 http://hihocoder.com/discuss/question/3005 声明一下: n是和x一起的,m是和y一起的 x是横着的,y是纵着的,x往右为正,y往下为正 (非常反常 ...

  8. hihocoder [Offer收割]编程练习赛52 D 部门聚会

    看了题目的讨论才会做的 首先一点,算每条边(u, v)对于n*(n+1)/2种[l, r]组合的贡献 正着算不如反着算 哪些[l, r]的组合没有包含这条边(u, v)呢 这个很好算 只需要统计u这半 ...

  9. hihocoder [Offer收割]编程练习赛14

    A.小Hi和小Ho的礼物 谜之第1题,明明是第1题AC率比C还要低.题目是求在n个不同重量袋子选4袋,2袋给A,2袋给B,使2人获得重量相同,求问方案数. 我也是一脸懵b...o(n2)暴力枚举发现把 ...

随机推荐

  1. 论 fmap、fmap fmap、与 fmap fmap fmap

    https://blog.csdn.net/sinat_25226993/article/details/44415803

  2. Express+Nodejs 下的登录拦截实现

    Express+Nodejs 下的登录拦截实现 利用商城举例,在商城中没有登录之前,可以看商品列表.详情.登录或者注册都可以,但是购买的时候是不行的,那么这个功能在Node后台中是怎么实现的呢,这个功 ...

  3. centos7 删除libc.so.6 紧急救援

    wget http://ftp.gnu.org/gnu/glibc/glibc-2.18.tar.gz tar zxvf glibc-2.18.tar.gz cd glibc-2.18 mkdir b ...

  4. Python统计字符串中出现次数最多的人名

    人名最多数统计题目摘自https://python123.io 描述编程模板中给出了一个字符串,其中包含了含有重复的人名,请直接输出出现最多的人名.‪‬‪‬‪‬‪‬‪‬‮‬‫‬‮‬‪‬‪‬‪‬‪‬‪‬ ...

  5. 【转载】深入理解Java的接口和抽象类

    深入理解Java的接口和抽象类 对于面向对象编程来说,抽象是它的一大特征之一.在Java中,可以通过两种形式来体现OOP的抽象:接口和抽象类.这两者有太多相似的地方,又有太多不同的地方.很多人在初学的 ...

  6. 【剑指Offer】 24、二叉树中和为某一值的路径

      题目描述:   输入一颗二叉树的根结点和一个整数,打印出二叉树中结点值的和为输入整数的所有路径.路径定义为从树的根结点开始往下一直到叶结点所经过的结点形成一条路径.(注意: 在返回值的list中, ...

  7. /proc/sys/vm man手册

    Manual page proc(5) line 1967 (press h for help or q to quit) /proc/sys/vm This directory contains f ...

  8. QBXT Day2

    遭遇[问题描述]你是能看到第一题的 friends呢.—— hjaN座楼房,立于城中 .第i座楼,高度 hi.你需要一开始选择座楼,开始跳楼. 在第 i座楼准备跳需要 ci的花费. 每次可以跳到任何一 ...

  9. SpringBoot 整合 Mybatis 进行CRUD测试开发

    今天来和大家分享下 Spring Boot 整合 MyBatis 的 CRUD 测试方法开发.因为 MyBaits 有两种开发形式,一种基于注解,一种基于 xml . SpringBoot配置文件也有 ...

  10. Flask中的session操作

    一.配置SECRET_KEY 因为flask的session是通过加密之后放到了cookie中.所以有加密就有密钥用于解密,所以,只要用到了flask的session模块就一定要配置“SECRET_K ...