`
xianshi_cn
  • 浏览: 14588 次
  • 性别: Icon_minigender_1
  • 来自: 未来
社区版块
存档分类
最新评论

Fackbook Programming Challenge

阅读更多

Question 1 / 1
You want to create a staff to use in your martial arts training, and it has to meet some specific requirements.
 
1. You want it to be composed of two smaller staves of equal length so that you can either use it as a single staff or as two smaller ones.
 
2. You want the full sized staff's center of gravity to be exactly in the middle of the staff.
 
You have a very, very long branch from which you can cut the pieces for your staff.  The mass of the branch varies significantly throughout it, so you use just any two pieces of the same length.  Given a description of the mass throughout the branch, determine the longest staff you can make, then return three integers on a single line, the first two indicating the first index of each half-staff, and the third indicating the length of each half-staff.
 
The input will be given on a single line as a string of digits [1-9], each digit representing the mass of a section of the branch.  All sections are the same size.  Here is an example:
 
                           41111921111119
                            11119   11119
 
If the indicated sections are cut from the branch they will satisfy your requirements.  They are both the same length, and they can be put together as either 9111111119 or 1111991111, both of which have a center of gravity exactly in the center of the staff.
 
 
Center of gravity can be determined by taking a weighted average of the mass of each section of the staff.  Given the following distances and masses:
Distance: 12345678
    Mass: 22241211
 
  Sum of the mass of each section: 2 + 2 + 2 + 4 + 1 + 2 + 1 + 1 = 15
  Weighted sum of the masses:
    2*1 + 2*2 + 2*3 + 4*4 + 1*5 + 2*6 + 1*7 + 1*8 = 60
  Weighted sum / regular sum = 60 / 15 = 4
 
This means that the center of mass is in section 4 of the staff.  If we wanted to use this staff the center of gravity would need to be (8+1)/2 = 4.5.
 
Here is an example problem:
 
  131251141231
  ----    ----
 
If we take the sections indicated we get 1312 and 1231.  By reversing the first one and putting them together we get21311231
 
  Sum of the mass of each section: 2 + 1 + 3 + 1 + 1 + 2 + 3 + 1 = 14
  Weight sum of the masses:
    2*1 + 1*2 + 3*3 + 1*4 + 1*5 + 2*6 + 3*7 + 1*8 = 63
  Weighted sum / regular sum = 63 / 14 = 4.5
 
This puts the center of mass exactly in the center of the staff, for a perfectly balanced staff.  There isn't a longer staff that can be made from this, so the answer to this problem is

  0 8 4
 
Because the half-staves begin at indices 0 and 8 (in that order) and each is of length 4.

------------------------------------------------------------------------------
Input 1:     123232111119232333277777999
Output 1:   7 15 6
Input 2:      7512839182731294837512653698759387212532563849823857812519853546649398328875256156256652116394915985281859358394738256421937941843758954891723598716547856473245243546392898871987152656238458214518158188152527386384518234758325165316563487283746285745938476523546127534721652812736459874658475366423876152387491872658763218276354827768598716283764571652637451962837648726876547826359871629836547862534761798346918275676473829648651672346981726587619462561625162561527384273482748237482734827348274827
Output 2:   10 262 229

-----------------------------------------------------------------------------------------------

How to implement it?
0
0
分享到:
评论

相关推荐

    预测facebook签到位置

    Facebook签到位置预测是一个涉及大数据分析、地理位置服务和社交网络行为学的复杂主题。在这个问题中,我们关注的是如何利用用户在Facebook上分享的签到信息来预测他们可能的未来签到位置。以下是对这个话题的详细...

    facebook api和facebook_jar包

    Facebook API和Facebook_JAR包是开发者用来与Facebook平台进行交互的重要工具,它们使得开发者能够创建应用程序,集成到Facebook生态系统中,实现数据交换、用户登录验证、发布内容等功能。Facebook API通常指的是...

    Facebook-Android-sdk-4.8.2

    Facebook Android SDK 4.8.2 是Facebook提供的一款用于帮助Android开发者在其应用中集成Facebook功能的开发工具包。这个版本的SDK包含了实现Facebook登录、分享、邀请、广告以及分析等功能所需的库和资源。通过使用...

    facebook分享

    在IT行业中,Facebook分享是一项常见的功能,特别是在移动应用和网页开发中。Facebook分享允许用户将内容,如文本、图片或链接,快速便捷地发布到他们的Facebook时间线,从而扩大信息的传播范围。在这个"facebook...

    Unity Facebook API 官方 Demo 完整工程 代码

    Unity Facebook API 官方 Demo 是一个为游戏开发者提供的完整工程,它展示了如何在Unity引擎中集成Facebook的功能,以便实现用户登录、得分分享、排行榜展示以及头像获取等社交互动功能。这个Demo项目名为...

    facebook 的登录和统计的依赖工程

    在IT行业中,Facebook的登录和统计功能是许多开发者在构建应用程序时经常使用的工具。Facebook提供了SDK(Software Development Kit)来简化这些过程,使得开发者能够轻松地整合Facebook的登录系统和数据分析服务。...

    facebook-android-sdk-4.18.0.zip

    Facebook Android SDK 4.18.0 是一个用于在Android应用程序中集成Facebook功能的开发工具包。这个SDK允许开发者轻松地实现用户登录、分享、广告、分析和其他Facebook服务。2017年发布的这个版本是当时最新的,为...

    接入facebook登录获取apk秘钥散列

    接入Facebook登录功能是Android应用开发中的常见需求,它允许用户使用他们的Facebook账号快速登录到你的应用,提升用户体验。而为了实现这一功能,开发者需要获取到应用的APK秘钥散列(Key Hash),这是一个用于验证...

    打造Facebook:亲历Facebook爆发的5年

    这本书的书名——《打造Facebook:亲历Facebook爆发的5年》很嚣张,谁有资格可以说这句话呢,当然,扎克伯格最有资格,但他不会亲自来告诉你,至少从目前的情况来看,近几年都不大可能。而且,这不是一个人的公司。...

    wordpress WooCommerce Facebook 多像素插件

    **WordPress WooCommerce Facebook 多像素插件** 在电子商务领域,数据追踪和分析对于优化营销策略、提高广告效果至关重要。WordPress 的 WooCommerce 平台是许多在线商店的首选,而 Facebook Pixel 则是广告主用来...

    FaceBook插件开发入门教程

    "FaceBook插件开发入门教程" 本文将从Facebook插件开发的角度,讲解如何创建一个简单的Facebook插件,并介绍Facebook插件开发的基本概念和流程。 一、Facebook插件开发简介 Facebook插件开发是指在Facebook平台上...

    Facebook登录分享发布信息程序

    Facebook登录分享发布信息程序是基于C#编程语言和Facebook SDK(FaceBook.dll)构建的应用,旨在为用户提供一种简便的方式,通过Webview组件实现用户在Windows桌面应用中的Facebook账户登录,并授权应用发布信息到...

    web版facebook登录

    【标题】:“Web版Facebook登录”探讨 在Web开发领域,Facebook登录是一种常见的社交登录方式,它允许用户通过他们的Facebook账号快速登录到第三方网站或应用,简化了注册和登录流程。本文将深入讨论Web版Facebook...

    Facebook登录接入Demo

    Facebook登录接入Demo是一个示例项目,它展示了如何将Facebook的登录功能集成到你的应用程序中。这个Demo可以帮助开发者理解并实施Facebook SDK,以便用户能够通过他们的Facebook账号方便地登录你的应用。下面将详细...

    FACEBOOK FLASH 示例 教程

    Facebook Flash 示例教程旨在帮助开发者和设计师了解如何在Flash环境中与Facebook平台进行集成,创建互动性的社交媒体应用程序或游戏。本教程将深入探讨以下关键知识点: 1. **Facebook API**:Facebook 提供了一组...

    vue使用facebook twitter分享示例

    facebook 分享文档 twitter 分享文档 vue 使用 facebook 使用分享 找到index.html 添加一下代码 <!-- facebook 分享 --> <div id=fb-root></div> [removed](function (d, s, id) { var js, fjs = d....

    Facebook菜鸟到老鸟全系列运营玩法+Facebook专业广告投放全系列课程-视频教程网盘链接提取码下载.txt

    不走弯路,帮助你快速掌握Facebook运营重点。Facebook广告投放累计超过200万美元的经验数据分析以及总结,快速理解专业广告投放的重点,学完以后加以实操的练习很快就可以成为专业级的运营人才。 1、Facebook专业...

    cocos creator中facebook分享demo

    cocos creator接入facebook SDK,利用facebook的接口FBInstant,在facebook的环境下执行代码,实现facebook分享功能及其他

    Facebook PHP SDK 4.0

    Facebook PHP SDK 4.0

    Facebook基础培训.pptx

    Facebook基础培训旨在帮助新员工了解并掌握Facebook这一全球最大的社交媒体平台的基本知识和广告投放操作。本次培训由Tracy主讲,内容涵盖了Facebook的基础概念、专页管理、广告系统以及技术与开发者账号的相关知识...

Global site tag (gtag.js) - Google Analytics