{"id":1911,"date":"2026-09-28T16:11:12","date_gmt":"2026-09-28T16:11:12","guid":{"rendered":"https:\/\/accelthinking.com\/?p=1911"},"modified":"2026-10-03T19:13:17","modified_gmt":"2026-10-03T19:13:17","slug":"usaco-2018-december-bronze-mixing-milk-solution-analysis","status":"publish","type":"post","link":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/","title":{"rendered":"USACO 2018 December Bronze Mixing Milk Solution: Simulating 100 Pours"},"content":{"rendered":"<style>\nhtml,body,#page{background:#f8fafc!important}.site-header,.site-footer,#masthead,#colophon,.entry-header,.post-navigation,.comments-area{display:none!important}.entry-title{display:none!important}.site-content .ast-container{max-width:100%!important;padding:0!important}.entry-content{margin:0!important;line-height:1.5!important}.site-content,#content,#primary,#main,.ast-plain-container #primary{margin:0!important;padding:0!important;background:#f8fafc}.ast-article-single{padding:0!important}\n.ati-page,.ati-page *{box-sizing:border-box}.entry-content>.ati-page,.ati-page{display:flex!important;flex-direction:column!important;width:100%!important;max-width:none!important;margin-left:0!important;margin-right:0!important;font-family:Inter,Arial,sans-serif;color:#0f172a;background:#f8fafc;font-size:0;line-height:0}.ati-page>p,.ati-page main>p,.ati-footer>p{display:none!important;margin:0!important}.ati-page a{text-decoration:none;color:inherit}.ati-page svg{display:block}.ati-top,.ati-page main,.ati-footer{font-size:16px;line-height:1.5}\n.ati-top{position:relative;z-index:2;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;min-height:76px;padding:0 clamp(22px,6vw,116px);color:#fff;background:#050505;border-bottom:1px solid rgba(255,255,255,.08)}.ati-top>p{display:contents!important}.ati-top br,.ati-nav br{display:none!important}.ati-brand{display:inline-flex;align-items:center;width:max-content;color:#ffc400!important}.ati-logo img{display:block;width:auto;height:38px;max-width:min(260px,42vw);object-fit:contain}.ati-nav{display:flex;gap:clamp(20px,3vw,44px);align-items:center;justify-content:center;font-size:15px;font-weight:600}.ati-nav a{position:relative;padding:28px 0 24px;color:rgba(255,255,255,.86)!important}.ati-nav a:hover,.ati-nav a.active{color:#ffc400!important}.ati-nav a:after{position:absolute;right:0;bottom:19px;left:0;height:2px;content:\"\";background:#ffc400;transform:scaleX(0);transition:transform 160ms ease}.ati-nav a:hover:after,.ati-nav a.active:after{transform:scaleX(1)}.ati-header-cta{justify-self:end;display:inline-flex;align-items:center;justify-content:center;min-height:42px;padding:0 20px;color:#050505!important;background:#ffc400;border-radius:8px;font-size:14px;font-weight:800}\n.ati-page{--hero-pattern:radial-gradient(circle at 82% 24%,rgba(255,196,0,.18) 0 2px,transparent 3px),linear-gradient(135deg,rgba(255,255,255,.07) 1px,transparent 1px);--hero-pattern-size:90px 90px,38px 38px;--hero-pattern-opacity:.55}.ati-solutions{--hero-pattern:radial-gradient(circle at 25px 25px,rgba(255,196,0,.2) 0 2px,transparent 3px),linear-gradient(90deg,rgba(255,196,0,.09) 1px,transparent 1px),linear-gradient(0deg,rgba(255,255,255,.06) 1px,transparent 1px);--hero-pattern-size:96px 96px,96px 96px,96px 96px}.ati-cp-academy{--hero-pattern:radial-gradient(circle at 20px 20px,rgba(255,196,0,.26) 0 3px,transparent 4px),radial-gradient(circle at 74px 58px,rgba(20,184,166,.18) 0 2px,transparent 3px),linear-gradient(135deg,transparent 46%,rgba(255,196,0,.11) 47% 48%,transparent 49%);--hero-pattern-size:112px 112px,112px 112px,56px 56px}.ati-it-consulting{--hero-pattern:linear-gradient(90deg,transparent 0 28px,rgba(20,184,166,.14) 29px 30px,transparent 31px 72px),linear-gradient(0deg,transparent 0 28px,rgba(255,196,0,.1) 29px 30px,transparent 31px 72px),radial-gradient(circle at 30px 30px,rgba(20,184,166,.22) 0 2px,transparent 3px);--hero-pattern-size:72px 72px,72px 72px,72px 72px}.ati-about-page{--hero-pattern:linear-gradient(135deg,rgba(255,196,0,.12) 0 2px,transparent 2px 28px),radial-gradient(circle at 85% 28%,rgba(255,255,255,.12) 0 2px,transparent 3px);--hero-pattern-size:42px 42px,96px 96px}.ati-contact{--hero-pattern:radial-gradient(circle at 78% 44%,transparent 0 34px,rgba(255,196,0,.14) 35px 36px,transparent 37px 70px,rgba(20,184,166,.12) 71px 72px,transparent 73px),linear-gradient(135deg,rgba(255,255,255,.06) 1px,transparent 1px);--hero-pattern-size:220px 220px,42px 42px}.ati-cp-weekly-challenge{--hero-pattern:radial-gradient(circle at 18px 18px,rgba(255,196,0,.2) 0 2px,transparent 3px),linear-gradient(90deg,rgba(255,255,255,.07) 1px,transparent 1px);--hero-pattern-size:52px 52px,104px 104px}.ati-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:clamp(28px,6vw,90px);align-items:center;min-height:430px;padding:76px clamp(22px,10vw,160px);overflow:hidden;color:#fff;background:linear-gradient(90deg,rgba(0,0,0,.92),rgba(0,0,0,.6)),var(--hero) center\/cover no-repeat}.ati-hero:after{position:absolute;inset:0;content:\"\";background:var(--hero-pattern);background-size:var(--hero-pattern-size);opacity:var(--hero-pattern-opacity);mix-blend-mode:screen;pointer-events:none}.ati-hero>*{position:relative;z-index:1}.ati-label{margin:0 0 12px!important;color:#ffb000!important;font-size:13px!important;font-weight:800!important;letter-spacing:.08em;text-transform:uppercase}.ati-hero h1{max-width:840px;margin:0!important;color:#fff!important;font-size:clamp(42px,5vw,72px)!important;line-height:1.03!important;font-weight:800!important;letter-spacing:0}.ati-hero-title-line{display:block;color:#fff!important}.ati-hero-title-line.accent{color:#ffc400!important}.ati-word{display:inline-block;white-space:nowrap}.ati-word:not(:last-child){margin-right:.32em}.ati-letter{display:inline-block;opacity:0;transform:translateY(.34em);animation:ati-letter-in 520ms cubic-bezier(.2,.8,.2,1) forwards;animation-delay:calc(38ms * var(--i))}@keyframes ati-letter-in{0%{opacity:0;transform:translateY(.34em)}100%{opacity:1;transform:translateY(0)}}@media(prefers-reduced-motion:reduce){.ati-letter{opacity:1;transform:none;animation:none}}.ati-hero p:not(.ati-label){max-width:700px;margin:22px 0 0!important;color:rgba(255,255,255,.86)!important;font-size:19px!important}.ati-side{padding:28px;color:#fff;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.18);border-radius:8px;backdrop-filter:blur(18px)}.ati-side strong{display:block;color:#ffc400;font-size:22px;line-height:1.15;overflow-wrap:anywhere}.ati-side p{margin:12px 0 0!important;color:rgba(255,255,255,.78)!important}.ati-actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:32px}.ati-btn{display:inline-flex;align-items:center;justify-content:center;min-height:54px;padding:0 28px;border-radius:8px;font-size:15px;font-weight:800}.ati-primary{color:#050505!important;background:linear-gradient(135deg,#ffc400,#ffb000);box-shadow:0 18px 38px rgba(255,196,0,.25)}.ati-secondary{color:#fff!important;border:1px solid #ffc400}\n.ati-section,.ati-about{max-width:1320px;margin:0 auto;padding:72px clamp(22px,6vw,64px)}.ati-heading{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;align-items:end;margin-bottom:32px}.ati-heading h2,.ati-split h2{margin:0!important;color:#050505!important;font-size:clamp(30px,4vw,48px)!important;line-height:1.08!important}.ati-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.ati-grid.five{grid-template-columns:repeat(5,minmax(0,1fr))}.ati-card{padding:26px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 18px 45px rgba(15,23,42,.06)}.ati-card .ati-num{color:#b47c00;font-size:14px;font-weight:800;text-transform:uppercase}.ati-card h3{margin:12px 0 0!important;color:#050505!important;font-size:22px!important;line-height:1.12!important}.ati-card p{margin:12px 0 0!important;color:#172033!important}.ati-task-card h3{margin:0!important}.ati-task-card h3 .ati-num{display:inline;color:#b47c00;font-size:22px;line-height:1.12}.ati-task-card p{margin-top:14px!important}.ati-split{max-width:1320px;margin:0 auto;padding:72px clamp(22px,6vw,64px);display:grid;grid-template-columns:.85fr 1.15fr;gap:52px;border-top:1px solid #e2e8f0}.ati-list{display:grid;gap:14px}.ati-list article{padding:20px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.ati-list b{display:block;color:#050505;font-size:18px}.ati-list span{display:block;margin-top:6px;color:#172033}.ati-dark{max-width:none;background:linear-gradient(135deg,#050505,#0f172a);color:#fff;border:0;padding-left:clamp(22px,10vw,160px);padding-right:clamp(22px,10vw,160px)}.ati-dark h2,.ati-dark p{color:#fff!important}.ati-dark .ati-list article{background:rgba(255,255,255,.06);border-color:rgba(255,255,255,.12)}.ati-dark .ati-list b{color:#ffc400}.ati-dark .ati-list span{color:rgba(255,255,255,.78)}.ati-path{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:16px}.ati-benefits{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.ati-benefits span{padding:18px 20px;color:#0f3d37;background:rgba(20,184,166,.1);border:1px solid rgba(20,184,166,.24);border-radius:8px;font-weight:800}.ati-side .ati-side-link{display:inline-flex;margin-top:18px;min-height:42px;padding:0 16px;align-items:center;justify-content:center;color:#050505!important;background:#ffc400;border-radius:8px;font-size:14px;font-weight:800}.ati-challenge-entry{max-width:1320px;margin:0 auto;padding:0 clamp(22px,6vw,64px) 72px}.ati-challenge-entry+.ati-challenge-entry{padding-top:0}.ati-challenge-panel{display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;padding:28px 30px;color:#fff;background:linear-gradient(135deg,#050505,#111827);border:1px solid rgba(255,196,0,.36);border-radius:8px;box-shadow:0 24px 55px rgba(15,23,42,.16)}.ati-challenge-entry h2{margin:0!important;color:#fff!important;font-size:clamp(24px,3vw,36px)!important;line-height:1.08!important}.ati-challenge-entry p{margin:8px 0 0!important;color:#dbe4ef!important}.ati-challenge-entry a{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:0 20px;color:#050505!important;background:#ffc400;border-radius:8px;font-weight:800;white-space:nowrap}.ati-posts{display:grid;gap:18px}.ati-posts article{padding:26px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}.ati-posts h2{margin:0!important;color:#050505!important;font-size:28px!important}.ati-tag{color:#b47c00;font-size:13px;font-weight:800;text-transform:uppercase}\n.ati-assessment{display:grid;gap:18px}.ati-assessment-frame{display:block;width:100%;min-height:3300px;border:0;background:#f8fafc}.ati-embed{overflow:hidden;border:1px solid #1e293b;border-radius:8px;background:#050505;box-shadow:0 18px 45px rgba(15,23,42,.12)}.ati-embed iframe{display:block;width:100%;min-height:760px;border:0}.ati-levels{display:grid;gap:10px;margin:0;padding:0;list-style:none}.ati-levels li{padding:14px 16px;background:#fff;border:1px solid #e2e8f0;border-radius:8px;color:#172033}.ati-task-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:800px){.ati-task-grid{grid-template-columns:1fr}.ati-assessment-frame{min-height:4300px}}\nbody .ati-wpforms .wpforms-container{margin:0!important}body .ati-wpforms form,body .ati-wpforms .wpforms-field-container{display:flex!important;flex-direction:column!important}body .ati-wpforms .wpforms-field{padding:10px 0 16px!important}body .ati-wpforms .wpforms-field.wpforms-field-text{display:none!important}body .ati-wpforms .wpforms-field.wpforms-field-select{order:-10!important}body .ati-wpforms .wpforms-field-label{font-weight:800!important;color:#050505!important}body .ati-wpforms .wpforms-field-row{max-width:100%!important}body .ati-wpforms .wpforms-field-row-block{width:100%!important;padding:0!important;margin-bottom:12px!important}body .ati-wpforms input,body .ati-wpforms textarea,body .ati-wpforms select{width:100%!important;max-width:100%!important;min-height:48px!important;padding:12px 14px!important;border:1px solid #e2e8f0!important;border-radius:8px!important;background:#f8fafc!important;color:#0f172a!important;font:inherit!important}body .ati-wpforms select{appearance:auto!important}body .ati-wpforms button[type=submit]{min-height:52px!important;padding:0 26px!important;border:0!important;border-radius:8px!important;color:#050505!important;background:linear-gradient(135deg,#ffc400,#ffb000)!important;box-shadow:0 18px 38px rgba(255,196,0,.24)!important;font-weight:800!important}\n#wpforms-76-field_5-container,#wpforms-76-field_6-container{display:none!important}#wpforms-76-field_4-container{order:-10!important}\n.ati-challenge-query .wp-block-post-template,.ati-challenge-posts{display:grid!important;gap:18px!important;padding:0!important;margin:0!important;list-style:none!important}.ati-challenge-query .wp-block-post,.ati-challenge-posts li{padding:26px!important;background:#fff!important;border:1px solid #e2e8f0!important;border-radius:8px!important;box-shadow:0 18px 45px rgba(15,23,42,.06)}.ati-challenge-query h2{margin:0!important}.ati-challenge-query h2 a,.ati-challenge-posts a{display:block;color:#050505!important;font-size:clamp(23px,2.8vw,31px);font-weight:800;line-height:1.12}.ati-challenge-query h2 a:hover,.ati-challenge-posts a:hover{color:#b47c00!important}.ati-challenge-query time,.ati-challenge-posts time{display:block;margin-top:10px;color:#b47c00;font-size:13px;font-weight:800;text-transform:uppercase}.ati-challenge-query .wp-block-post-excerpt,.ati-challenge-posts .wp-block-latest-posts__post-excerpt{margin:12px 0 0!important;color:#172033!important;font-size:16px;line-height:1.55}.ati-challenge-query .wp-block-post-excerpt__more-link{display:inline-flex;margin-top:14px;color:#b47c00!important;font-weight:800}.ati-article{max-width:1080px;margin:0 auto;padding:72px clamp(22px,6vw,64px);font-size:18px;line-height:1.7}.ati-article-card{padding:clamp(28px,5vw,56px);background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 18px 45px rgba(15,23,42,.06)}.ati-article-card p{margin:0 0 22px!important;color:#172033!important}.ati-article-card h2{margin:42px 0 14px!important;color:#050505!important;font-size:clamp(25px,3vw,36px)!important;line-height:1.1!important}.ati-article-card ul{margin:0 0 24px 22px!important;color:#172033}.ati-article-card li{margin:8px 0}.ati-article-card pre{overflow:auto;margin:16px 0 28px!important;padding:20px!important;color:#f8fafc!important;background:#0b1020!important;border:1px solid #1e293b;border-radius:8px;font-size:14px;line-height:1.55}.ati-article-card pre code{display:block!important;padding:0!important;color:#f8fafc!important;background:transparent!important;border:0!important;font-family:Menlo,Consolas,monospace;white-space:pre}.ati-back-link{display:inline-flex;margin-bottom:18px;color:#b47c00!important;font-size:14px;font-weight:800}\n.ati-footer{display:grid;grid-template-columns:1fr auto 1fr;gap:24px;align-items:center;min-height:90px;padding:22px clamp(22px,10vw,160px);color:#f8fafc;background:#050505;text-rendering:geometricPrecision;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ati-footer .ati-logo img{height:36px;max-width:240px}.ati-footer a{color:#f8fafc!important}.ati-footer a:hover{color:#ffc400!important}.ati-footer nav{display:flex;flex-wrap:wrap;gap:24px;justify-content:center;font-size:14px;font-weight:600;line-height:1.35}.ati-footer address{display:grid;gap:5px;justify-self:end;color:#dbe4ef;font-size:14.5px;font-weight:500;line-height:1.35;font-style:normal;margin:0!important}.ati-footer address a{font-weight:700}.ati-footer address span{color:#cbd5e1}\n.ati-menu-toggle,.ati-menu-button{display:none}@media(max-width:1100px){.ati-top,.ati-hero,.ati-heading,.ati-grid,.ati-grid.five,.ati-split,.ati-path,.ati-footer,.ati-challenge-panel{grid-template-columns:1fr}.ati-header-cta,.ati-footer address{justify-self:start}.ati-nav{justify-content:flex-start;flex-wrap:wrap}.ati-split{gap:30px}.ati-benefits{grid-template-columns:1fr}.ati-challenge-entry a{justify-self:start}}@media(max-width:700px){.ati-top{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:0!important;padding:16px 22px!important}.ati-logo img{height:34px}.ati-menu-button{display:grid;gap:5px;place-content:center;width:44px;height:40px;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:8px;cursor:pointer}.ati-menu-button span{display:block;width:20px;height:2px;background:#ffc400;border-radius:999px}.ati-nav{display:none!important;grid-column:1\/-1;width:100%;gap:0;margin-top:14px;padding:10px 0;border-top:1px solid rgba(255,255,255,.1)}.ati-nav a{padding:11px 0!important}.ati-nav a:after{bottom:5px}.ati-header-cta{display:none!important}.ati-menu-toggle:checked~.ati-nav{display:grid!important}.ati-menu-toggle:checked~.ati-header-cta{display:inline-flex!important;grid-column:1\/-1;justify-self:start;margin-top:12px}.ati-hero{min-height:auto;padding:60px 22px}.ati-hero h1{font-size:40px!important}.ati-footer nav{justify-content:flex-start}}\n@media(max-width:1100px){.ati-top{display:grid!important;grid-template-columns:1fr auto!important;align-items:center!important;gap:0!important;padding:16px 22px!important}.ati-logo img{height:34px}.ati-menu-button{display:grid!important;gap:5px;place-content:center;width:44px;height:40px;color:#fff;border:1px solid rgba(255,255,255,.22);border-radius:8px;cursor:pointer}.ati-menu-button span{display:block;width:20px;height:2px;background:#ffc400;border-radius:999px}.ati-nav{display:none!important;grid-column:1\/-1;width:100%;gap:0;margin-top:14px;padding:10px 0;border-top:1px solid rgba(255,255,255,.1)}.ati-nav a{padding:11px 0!important}.ati-nav a:after{bottom:5px}.ati-header-cta{display:none!important}.ati-menu-toggle:checked~.ati-nav{display:grid!important}.ati-menu-toggle:checked~.ati-header-cta{display:inline-flex!important;grid-column:1\/-1;justify-self:start;margin-top:12px}}\n.ati-mobile-menu{display:none}.ati-mobile-menu summary{list-style:none}.ati-mobile-menu summary::-webkit-details-marker{display:none}@media(max-width:1100px){.ati-mobile-menu{display:block!important;position:absolute!important;top:18px!important;right:22px!important;z-index:9999!important}.ati-mobile-menu summary{display:grid!important;gap:5px;place-content:center;width:44px;height:40px;border:1px solid rgba(255,255,255,.22);border-radius:8px;background:#050505;cursor:pointer}.ati-mobile-menu summary span{display:block;width:20px;height:2px;background:#ffc400;border-radius:999px}.ati-mobile-menu summary:before{display:block;width:20px;height:2px;content:\"\";background:#ffc400;border-radius:999px;box-shadow:0 7px 0 #ffc400,0 14px 0 #ffc400}.ati-mobile-menu summary span{display:none}.ati-mobile-menu[open] summary{border-color:rgba(255,196,0,.62);background:rgba(255,196,0,.1)}.ati-mobile-panel{position:absolute;top:52px;right:0;display:grid;gap:2px;width:min(78vw,320px);padding:12px;background:#050505;border:1px solid rgba(255,255,255,.14);border-radius:8px;box-shadow:0 24px 60px rgba(0,0,0,.46)}.ati-mobile-panel a{display:block;padding:12px 14px;color:#f8fafc!important;border-radius:6px;font-size:15px;font-weight:800;line-height:1.2}.ati-mobile-panel a.active,.ati-mobile-panel a:hover{color:#ffc400!important;background:rgba(255,255,255,.06)}.ati-mobile-panel .ati-mobile-cta{margin-top:6px;color:#050505!important;background:#ffc400;text-align:center}.ati-mobile-panel .ati-mobile-cta:hover{color:#050505!important;background:#ffcf33}}\n.ati-mobile-menu-button{position:absolute!important;top:18px!important;right:22px!important;z-index:10000!important;display:grid!important;place-content:center;width:44px;height:40px;color:#ffc400!important;border:1px solid rgba(255,255,255,.24);border-radius:8px;background:#050505;font-size:27px!important;font-weight:800;line-height:1;text-decoration:none!important}.ati-mobile-menu-button:before{display:none!important}.ati-mobile-nav-panel{display:none;position:absolute!important;top:70px!important;right:22px!important;z-index:10000!important;width:min(78vw,320px);padding:12px;background:#050505;border:1px solid rgba(255,255,255,.14);border-radius:8px;box-shadow:0 24px 60px rgba(0,0,0,.46)}.ati-mobile-nav-panel:target{display:grid!important;gap:2px}.ati-mobile-nav-panel a{display:block;padding:12px 14px;color:#f8fafc!important;border-radius:6px;font-size:15px;font-weight:800;line-height:1.2}.ati-mobile-nav-panel a.active,.ati-mobile-nav-panel a:hover{color:#ffc400!important;background:rgba(255,255,255,.06)}.ati-mobile-nav-panel .ati-mobile-cta{margin-top:6px;color:#050505!important;background:#ffc400;text-align:center}.ati-mobile-nav-panel .ati-mobile-close{color:#94a3b8!important;text-align:center;font-size:13px}@media(min-width:1101px){.ati-mobile-menu-button,.ati-mobile-nav-panel{display:none!important}}@media(max-width:1100px){.ati-mobile-menu{display:none!important}}\n.trp-language-switcher.trp-floating-switcher{position:fixed!important;top:auto!important;right:22px!important;bottom:22px!important;z-index:10001!important;width:auto!important;min-width:118px!important;--bottom:22px!important;--right:22px!important;--border-radius:8px!important;--bg:#050505!important;--bg-hover:rgba(255,255,255,.08)!important;--text:#f8fafc!important;--text-hover:#ffc400!important;--border:1px solid rgba(255,255,255,.2)!important}.trp-language-switcher .trp-language-switcher-inner{background:#050505!important;border-color:rgba(255,255,255,.2)!important;border-radius:8px!important;box-shadow:0 18px 42px rgba(0,0,0,.28)!important}.trp-language-switcher .trp-language-item{color:#f8fafc!important;font-weight:800!important}.trp-language-switcher .trp-language-item:hover{color:#ffc400!important;background:rgba(255,255,255,.08)!important}.trp-language-switcher .trp-flag-image{display:none!important}.trp-language-switcher .trp-language-item-name{margin-left:0!important}.ati-header-cta{margin-right:0}@media(max-width:1100px){.trp-language-switcher.trp-floating-switcher{right:18px!important;bottom:18px!important;min-width:118px!important;--bottom:18px!important;--right:18px!important}}\n<\/style>\n<style>\n.ati-article-shell{max-width:980px;margin:0 auto;padding:72px clamp(22px,6vw,64px)}\n.ati-article-card{background:#fff;border:1px solid #e2e8f0;border-radius:8px;box-shadow:0 18px 45px rgba(15,23,42,.06);padding:clamp(26px,5vw,58px)}\n.ati-article-meta{display:flex;flex-wrap:wrap;gap:10px 14px;margin:18px 0 0;color:rgba(255,255,255,.78);font-size:14px;font-weight:700}\n.ati-article-content{color:#172033;font-size:18px;line-height:1.72}\n.ati-article-content p{margin:0 0 1.1em!important;color:#172033!important}\n.ati-article-content h2{margin:2em 0 .65em!important;color:#050505!important;font-size:clamp(26px,3vw,36px)!important;line-height:1.12!important}\n.ati-article-content h3{margin:1.45em 0 .45em!important;color:#050505!important;font-size:22px!important;line-height:1.2!important}\n.ati-article-content ul,.ati-article-content ol{margin:0 0 1.2em 1.4em!important;padding:0!important}\n.ati-article-content li{margin:.35em 0!important}\n.ati-article-content pre{margin:1.4em 0!important;padding:18px 20px!important;overflow:auto;color:#e5e7eb;background:#0f172a;border-radius:8px;line-height:1.55;font-size:14px}\n.ati-article-content code{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",monospace}\n.ati-article-content p code,.ati-article-content li code{padding:.1em .32em;background:#f1f5f9;border:1px solid #e2e8f0;border-radius:5px;color:#0f172a;font-size:.92em}\n.ati-article-content a{color:#b47c00!important;font-weight:800;text-decoration:none}\n.ati-article-content a:hover{text-decoration:underline}\n.ati-article-back{margin-top:28px;padding-top:22px;border-top:1px solid #e2e8f0}\n@media(max-width:800px){.ati-article-shell{padding:44px 18px}.ati-article-card{padding:24px 18px}.ati-article-content{font-size:16px}.ati-article-content pre{font-size:13px}}\n<\/style>\n<div class=\"ati-page ati-resource-post\" style=\"--hero:url(https:\/\/i0.wp.com\/accelthinking.com\/wp-content\/uploads\/2026\/06\/hero-technology-education-51.png?w=1600&amp;quality=85&amp;ssl=1)\">\n<header class=\"ati-top\">\n      <a class=\"ati-brand ati-logo\" href=\"\/zh_cn\/\" aria-label=\"Accel Thinking home\"><img loading=\"lazy\" decoding=\"async\" height=\"63\" width=\"366\" src=\"https:\/\/i0.wp.com\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png?w=480&amp;quality=85&amp;ssl=1\" alt=\"Accel Thinking\"><\/a><br>\n      <input class=\"ati-menu-toggle\" id=\"ati-menu-post\" type=\"checkbox\" aria-label=\"Toggle navigation menu\"><br>\n      <label class=\"ati-menu-button\" for=\"ati-menu-post\" aria-hidden=\"true\"><span><\/span><span><\/span><span><\/span><\/label>\n<details class=\"ati-mobile-menu\">\n<summary aria-label=\"Open navigation menu\"><span><\/span><span><\/span><span><\/span><\/summary>\n<div class=\"ati-mobile-panel\"><a class=\"\" href=\"\/zh_cn\/\">\u9996\u9875<\/a><a class=\"\" href=\"\/zh_cn\/northstar\/\">\u5317\u6781\u661f<\/a><a class=\"\" href=\"\/zh_cn\/learning\/\">\u5b66\u4e60\u8def\u5f84<\/a><a class=\"active\" href=\"\/zh_cn\/resources\/\">\u8d44\u6e90\u6587\u7ae0<\/a><a class=\"\" href=\"\/zh_cn\/about\/\">\u5173\u4e8e\u6211\u4eec<\/a><a class=\"\" href=\"\/zh_cn\/contact\/\">\u8054\u7cfb\u6211\u4eec<\/a><a class=\"ati-mobile-cta\" href=\"\/zh_cn\/northstar\/\">\u5f00\u59cb\u5317\u6781\u661f\u6d4b\u8bc4<\/a><\/div>\n<\/details>\n<p>      <a class=\"ati-mobile-menu-button\" href=\"#ati-mobile-nav-post\" aria-label=\"Open navigation menu\">\u2630<\/a><\/p>\n<nav id=\"ati-mobile-nav-post\" class=\"ati-mobile-nav-panel\"><a class=\"\" href=\"\/zh_cn\/\">\u9996\u9875<\/a><a class=\"\" href=\"\/zh_cn\/northstar\/\">\u5317\u6781\u661f<\/a><a class=\"\" href=\"\/zh_cn\/learning\/\">\u5b66\u4e60\u8def\u5f84<\/a><a class=\"active\" href=\"\/zh_cn\/resources\/\">\u8d44\u6e90\u6587\u7ae0<\/a><a class=\"\" href=\"\/zh_cn\/about\/\">\u5173\u4e8e\u6211\u4eec<\/a><a class=\"\" href=\"\/zh_cn\/contact\/\">\u8054\u7cfb\u6211\u4eec<\/a><a class=\"ati-mobile-cta\" href=\"\/zh_cn\/northstar\/\">\u5f00\u59cb\u5317\u6781\u661f\u6d4b\u8bc4<\/a><a class=\"ati-mobile-close\" href=\"#\">\u5173\u95ed<\/a><\/nav>\n<nav class=\"ati-nav\"><a class=\"\" href=\"\/zh_cn\/\">\u9996\u9875<\/a><a class=\"\" href=\"\/zh_cn\/northstar\/\">\u5317\u6781\u661f<\/a><a class=\"\" href=\"\/zh_cn\/learning\/\">\u5b66\u4e60\u8def\u5f84<\/a><a class=\"active\" href=\"\/zh_cn\/resources\/\">\u8d44\u6e90\u6587\u7ae0<\/a><a class=\"\" href=\"\/zh_cn\/about\/\">\u5173\u4e8e\u6211\u4eec<\/a><a class=\"\" href=\"\/zh_cn\/contact\/\">\u8054\u7cfb\u6211\u4eec<\/a><\/nav>\n<p>      <a class=\"ati-header-cta\" href=\"\/zh_cn\/northstar\/\">\u5f00\u59cb\u5317\u6781\u661f\u6d4b\u8bc4<\/a><br>\n    <\/p><\/header>\n<p>    <main><\/main><\/p>\n<section class=\"ati-hero ati-lang-en\">\n<div>\n<p class=\"ati-label\">CP Weekly Challenge \u00b7 USACO Bronze<\/p>\n<h1 aria-label=\"USACO 2018 December Bronze Mixing Milk Solution: Simulating 100 Pours\"><span class=\"ati-hero-title-line\"><span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:0\">U<\/span><span class=\"ati-letter\" style=\"--i:1\">S<\/span><span class=\"ati-letter\" style=\"--i:2\">A<\/span><span class=\"ati-letter\" style=\"--i:3\">C<\/span><span class=\"ati-letter\" style=\"--i:4\">O<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:6\">2<\/span><span class=\"ati-letter\" style=\"--i:7\">0<\/span><span class=\"ati-letter\" style=\"--i:8\">1<\/span><span class=\"ati-letter\" style=\"--i:9\">8<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:11\">D<\/span><span class=\"ati-letter\" style=\"--i:12\">e<\/span><span class=\"ati-letter\" style=\"--i:13\">c<\/span><span class=\"ati-letter\" style=\"--i:14\">e<\/span><span class=\"ati-letter\" style=\"--i:15\">m<\/span><span class=\"ati-letter\" style=\"--i:16\">b<\/span><span class=\"ati-letter\" style=\"--i:17\">e<\/span><span class=\"ati-letter\" style=\"--i:18\">r<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:20\">B<\/span><span class=\"ati-letter\" style=\"--i:21\">r<\/span><span class=\"ati-letter\" style=\"--i:22\">o<\/span><span class=\"ati-letter\" style=\"--i:23\">n<\/span><span class=\"ati-letter\" style=\"--i:24\">z<\/span><span class=\"ati-letter\" style=\"--i:25\">e<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:27\">M<\/span><span class=\"ati-letter\" style=\"--i:28\">i<\/span><span class=\"ati-letter\" style=\"--i:29\">x<\/span><span class=\"ati-letter\" style=\"--i:30\">i<\/span><span class=\"ati-letter\" style=\"--i:31\">n<\/span><span class=\"ati-letter\" style=\"--i:32\">g<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:34\">M<\/span><span class=\"ati-letter\" style=\"--i:35\">i<\/span><span class=\"ati-letter\" style=\"--i:36\">l<\/span><span class=\"ati-letter\" style=\"--i:37\">k<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:39\">S<\/span><span class=\"ati-letter\" style=\"--i:40\">o<\/span><span class=\"ati-letter\" style=\"--i:41\">l<\/span><span class=\"ati-letter\" style=\"--i:42\">u<\/span><span class=\"ati-letter\" style=\"--i:43\">t<\/span><span class=\"ati-letter\" style=\"--i:44\">i<\/span><span class=\"ati-letter\" style=\"--i:45\">o<\/span><span class=\"ati-letter\" style=\"--i:46\">n<\/span><span class=\"ati-letter\" style=\"--i:47\">:<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:49\">S<\/span><span class=\"ati-letter\" style=\"--i:50\">i<\/span><span class=\"ati-letter\" style=\"--i:51\">m<\/span><span class=\"ati-letter\" style=\"--i:52\">u<\/span><span class=\"ati-letter\" style=\"--i:53\">l<\/span><span class=\"ati-letter\" style=\"--i:54\">a<\/span><span class=\"ati-letter\" style=\"--i:55\">t<\/span><span class=\"ati-letter\" style=\"--i:56\">i<\/span><span class=\"ati-letter\" style=\"--i:57\">n<\/span><span class=\"ati-letter\" style=\"--i:58\">g<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:60\">1<\/span><span class=\"ati-letter\" style=\"--i:61\">0<\/span><span class=\"ati-letter\" style=\"--i:62\">0<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:64\">P<\/span><span class=\"ati-letter\" style=\"--i:65\">o<\/span><span class=\"ati-letter\" style=\"--i:66\">u<\/span><span class=\"ati-letter\" style=\"--i:67\">r<\/span><span class=\"ati-letter\" style=\"--i:68\">s<\/span><\/span><\/span><\/h1>\n<p>Learn the USACO 2018 December Bronze Mixing Milk solution with direct simulation, cyclic updates, invariants, and tested Python and C++ code.<\/p>\n<div class=\"ati-article-meta\"><span>\u4f5c\u8005\uff1aBerny<\/span><span>September 28, 2026<\/span><\/div>\n<\/div>\n<aside class=\"ati-side\"><strong>Direct Simulation<br>Cyclic Updates<br>Invariant<\/strong>\n<p>Write one exact state transition, repeat it in order, and verify what never changes.<\/p>\n<\/aside>\n<\/section>\n<section class=\"ati-hero ati-lang-zh\">\n<div>\n<p class=\"ati-label\">CP Weekly Challenge \u00b7 USACO Bronze<\/p>\n<h1 aria-label=\"USACO 2018 December Bronze Mixing Milk \u9898\u89e3\uff1a\u7528\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\">USACO 2018 December Bronze Mixing Milk \u9898\u89e3\uff1a\u7528\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976<\/h1>\n<p>\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002<\/p>\n<div class=\"ati-article-meta\"><span>\u4f5c\u8005\uff1aBerny<\/span><span>2026 \u5e74 9 \u6708 28 \u65e5<\/span><\/div>\n<\/div>\n<aside class=\"ati-side\"><strong>\u76f4\u63a5\u6a21\u62df<br>\u5faa\u73af\u66f4\u65b0<br>\u4e0d\u53d8\u91cf<\/strong>\n<p>\u5199\u51c6\u4e00\u6b21\u72b6\u6001\u8f6c\u79fb\uff0c\u6309\u987a\u5e8f\u91cd\u590d\uff0c\u5e76\u68c0\u67e5\u59cb\u7ec8\u4e0d\u53d8\u7684\u91cf\u3002<\/p>\n<\/aside>\n<\/section>\n<section class=\"ati-article-shell\">\n<article class=\"ati-article-card\">\n<div class=\"ati-share-tools\" data-ati-share>\n<div class=\"ati-share-copy\">\n<p class=\"ati-share-kicker\">\u5206\u4eab\u8fd9\u7bc7\u6587\u7ae0<\/p>\n<p class=\"ati-share-note\">\u590d\u5236\u94fe\u63a5\u3001\u4f7f\u7528\u624b\u673a\u5206\u4eab\u3001\u7528\u5fae\u4fe1\u626b\u7801\uff0c\u6216\u901a\u8fc7\u90ae\u4ef6\u53d1\u9001\u3002<\/p>\n<\/div>\n<div class=\"ati-share-actions\">\n    <button type=\"button\" data-share-native>\u5206\u4eab<\/button><br>\n    <button type=\"button\" data-share-copy-link>\u590d\u5236\u94fe\u63a5<\/button><br>\n    <button type=\"button\" data-share-wechat>\u5fae\u4fe1\u4e8c\u7ef4\u7801<\/button><br>\n    <a data-share-email>\u90ae\u7bb1<\/a>\n  <\/div>\n<div class=\"ati-share-qr\" data-share-qr hidden>\n    <img loading=\"lazy\" data-share-qr-img alt=\"QR code for sharing this article\">\n<p>\u4f7f\u7528\u5fae\u4fe1\u626b\u7801\uff0c\u7136\u540e\u5206\u4eab\u6587\u7ae0\u94fe\u63a5\u3002<\/p>\n<\/div>\n<p class=\"ati-share-status\" data-share-status aria-live=\"polite\">\n<\/p><\/div>\n<div class=\"ati-article-content ati-lang-en\">\n<article class=\"ati-post-article\">\n<p>Three buckets pour milk in a fixed cycle: bucket 1 into bucket 2, bucket 2 into bucket 3, and bucket 3 back into bucket 1. This continues for exactly 100 operations. The problem does not require a closed-form formula or a clever cycle shortcut. It tests whether we can implement one state update precisely and repeat it in the correct order.<\/p>\n<p>Mixing Milk is an excellent introduction to direct simulation. We store the current amount in each bucket, calculate the maximum legal transfer for one pour, and update the source and destination together.<\/p>\n<h2>Where This Fits in the USACO \/ CP DSA Map<\/h2>\n<ul>\n<li>Level: USACO Bronze, Difficulty Band L1<\/li>\n<li>Pattern: Direct Simulation, Cyclic Updates, State Invariant<\/li>\n<li>Prerequisite: arrays\/lists, <code>for<\/code> loops, <code>min<\/code>, modulo <code>%<\/code>, assignment and subtraction<\/li>\n<li>What this teaches: Translate a process into an exact repeatable state update and use invariants to verify the simulation.<\/li>\n<li>Where it appears again: process simulation, circular indexing, state machines, event-by-event updates<\/li>\n<\/ul>\n<h2>What to Study Next<\/h2>\n<ul>\n<li>Related CP Weekly problems: <a href=\"\/zh_cn\/ccc-2026-j4-snail-path-solution-analysis\/\">CCC 2026 J4 Snail Path<\/a> for step-by-step simulation, <a href=\"\/zh_cn\/ccc-2017-s1-sum-game-solution-analysis\/\">CCC 2017 S1 Sum Game<\/a> for running totals, and USACO 2019 January Bronze Shell Game for testing multiple starting states (planned).<\/li>\n<li>Related Python \/ C++ foundations: lists\/arrays, <code>for<\/code> loops, <code>min<\/code>, modulo-based circular indices, and coordinated state updates.<\/li>\n<li>Related DSA note: <code>DSA-004<\/code> Dry Runs: checking simulation order with a state table (planned).<\/li>\n<\/ul>\n<aside class=\"ati-official-source\"><strong>Official sources<\/strong><a href=\"https:\/\/usaco.org\/index.php?page=viewproblem2&amp;cpid=855\" target=\"_blank\" rel=\"noopener\">USACO 2018 December Bronze Problem 1: Mixing Milk<\/a> \u00b7 <a href=\"https:\/\/usaco.org\/current\/data\/sol_mixmilk_bronze_dec18.html\" target=\"_blank\" rel=\"noopener\">Official analysis<\/a><\/aside>\n<h2>What the Problem Is Asking<\/h2>\n<p>Farmer John has three buckets, possibly with different capacities. The input gives each bucket's capacity and current amount of milk.<\/p>\n<p>The pouring order is fixed:<\/p>\n<pre><code class=\"language-text\">bucket 1 -&gt; bucket 2\nbucket 2 -&gt; bucket 3\nbucket 3 -&gt; bucket 1\nrepeat<\/code><\/pre>\n<p>During every operation, he pours as much as possible until the source bucket is empty or the destination bucket is full. After exactly 100 pours, we output the final amount in each bucket on its own line.<\/p>\n<p>The official bounds are <code>1 &lt;= milk &lt;= capacity &lt;= 10^9<\/code>. The values can be large, but we should not move the milk one unit at a time. One arithmetic update simulates an entire pour.<\/p>\n<h2>Where Beginners Often Get Stuck<\/h2>\n<p>The first mistake is confusing the destination's capacity with its remaining free space. The usable space is:<\/p>\n<pre><code class=\"language-text\">free_space = capacity[target] - milk[target]<\/code><\/pre>\n<p>The second mistake is considering only the source amount. A transfer is limited by both the milk available at the source and the space available at the destination.<\/p>\n<p>The third mistake is updating too early. We must calculate the transfer amount before changing either bucket. Otherwise, using the already-reduced source amount can produce an incorrect destination update.<\/p>\n<p>Finally, the simulation must perform 100 operations, not 99. A loop over turns <code>0<\/code> through <code>99<\/code> performs exactly 100 pours.<\/p>\n<h2>Core Algorithm Idea<\/h2>\n<p>For one pour from <code>source<\/code> to <code>target<\/code>:<\/p>\n<pre><code class=\"language-text\">source_milk = milk[source]\ntarget_space = capacity[target] - milk[target]\ntransfer = min(source_milk, target_space)<\/code><\/pre>\n<p>Then update both parts of the state:<\/p>\n<pre><code class=\"language-text\">milk[source] -= transfer\nmilk[target] += transfer<\/code><\/pre>\n<p>If the source contains less milk than the destination can accept, the source empties first. If the destination has less free space, the destination fills first. The smaller quantity is exactly the largest legal transfer.<\/p>\n<h2>State and Cyclic Order<\/h2>\n<p>We store two arrays of length three:<\/p>\n<pre><code class=\"language-text\">capacity[i] = fixed capacity of bucket i\nmilk[i] = current amount in bucket i<\/code><\/pre>\n<p>For a zero-based turn number:<\/p>\n<pre><code class=\"language-text\">source = turn % 3\ntarget = (source + 1) % 3<\/code><\/pre>\n<p>The remainder cycles through <code>0, 1, 2<\/code>, and the second modulo wraps the destination from index 2 back to index 0. Turn 99 is the 100th operation; it pours from index 0 to index 1, matching the statement.<\/p>\n<h2>Dry Run with the Official Sample<\/h2>\n<p>The official sample begins with milk amounts <code>[3, 4, 5]<\/code>:<\/p>\n<div class=\"ati-table-wrap\">\n<table>\n<thead>\n<tr>\n<th>Pours completed<\/th>\n<th>Bucket 1<\/th>\n<th>Bucket 2<\/th>\n<th>Bucket 3<\/th>\n<th>Transfer<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>0<\/td>\n<td>3<\/td>\n<td>4<\/td>\n<td>5<\/td>\n<td>Initial state<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>0<\/td>\n<td>7<\/td>\n<td>5<\/td>\n<td><code>1 -&gt; 2<\/code>, move 3<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>0<\/td>\n<td>0<\/td>\n<td>12<\/td>\n<td><code>2 -&gt; 3<\/code>, move 7<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>10<\/td>\n<td>0<\/td>\n<td>2<\/td>\n<td><code>3 -&gt; 1<\/code>, move 10<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>0<\/td>\n<td>10<\/td>\n<td>2<\/td>\n<td><code>1 -&gt; 2<\/code>, move 10<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>A state table makes it easy to verify the direction, transfer amount, capacity limit, and operation count.<\/p>\n<h2>The Conservation Invariant<\/h2>\n<p>Every operation subtracts <code>transfer<\/code> from one bucket and adds the same amount to another. Therefore, the total milk never changes.<\/p>\n<p>The sample starts with <code>3 + 4 + 5 = 12<\/code>, so every later state must also sum to 12. Each amount must also remain between zero and its bucket's capacity. These invariants do not compute the answer directly, but they are powerful debugging checks.<\/p>\n<h2>Python \u89e3\u6cd5<\/h2>\n<pre><code class=\"language-python\">capacity = [0] * 3\nmilk = [0] * 3\n\nfor i in range(3):\n    capacity[i], milk[i] = map(int, input().split())\n\nfor turn in range(100):\n    source = turn % 3\n    target = (source + 1) % 3\n\n    free_space = capacity[target] - milk[target]\n    transfer = min(milk[source], free_space)\n\n    milk[source] -= transfer\n    milk[target] += transfer\n\nfor amount in milk:\n    print(amount)<\/code><\/pre>\n<p>This version uses standard input and output, which is convenient for modern judges and local testing. The historical USACO statement uses <code>mixmilk.in<\/code> and <code>mixmilk.out<\/code>; only the input\/output adapter changes if that file interface is required.<\/p>\n<h2>C++ \u89e3\u6cd5<\/h2>\n<pre><code class=\"language-cpp\">#include &lt;algorithm&gt;\n#include &lt;array&gt;\n#include &lt;iostream&gt;\nusing namespace std;\n\nint main() {\n    ios::sync_with_stdio(false);\n    cin.tie(nullptr);\n\n    array&lt;long long, 3&gt; capacity{};\n    array&lt;long long, 3&gt; milk{};\n\n    for (int i = 0; i &lt; 3; i++) {\n        cin &gt;&gt; capacity[i] &gt;&gt; milk[i];\n    }\n\n    for (int turn = 0; turn &lt; 100; turn++) {\n        int source = turn % 3;\n        int target = (source + 1) % 3;\n\n        long long freeSpace = capacity[target] - milk[target];\n        long long transfer = min(milk[source], freeSpace);\n\n        milk[source] -= transfer;\n        milk[target] += transfer;\n    }\n\n    for (long long amount : milk) {\n        cout &lt;&lt; amount &lt;&lt; &#x27;\\n&#x27;;\n    }\n\n    return 0;\n}<\/code><\/pre>\n<p>The C++ solution uses <code>long long<\/code>, which also makes a debugging sum of all three buckets safe when the total can be close to <code>3 x 10^9<\/code>.<\/p>\n<h2>Why the Algorithm Is Correct<\/h2>\n<p>During each turn, <code>transfer<\/code> does not exceed the milk in the source, so the source cannot become negative. It also does not exceed the free space in the destination, so the destination cannot exceed its capacity.<\/p>\n<p>If <code>transfer<\/code> equals the source amount, the source becomes empty. If it equals the destination's free space, the destination becomes full. Since it is the minimum of these two limits, at least one stopping condition is reached, and the operation transfers the maximum legal amount required by the statement.<\/p>\n<p>The loop performs exactly 100 correct operations in the required cyclic order. Therefore, the three stored amounts after the loop are exactly the required final state.<\/p>\n<h2>\u590d\u6742\u5ea6\u5206\u6790<\/h2>\n<p>For a general number of pours <code>P<\/code>:<\/p>\n<pre><code class=\"language-text\">Time: O(P)\nSpace: O(1)<\/code><\/pre>\n<p>Because this problem fixes <code>P = 100<\/code>, both the running time and extra space are constant with respect to the input values. Large capacities do not increase the number of operations.<\/p>\n<h2>\u5e38\u89c1\u9519\u8bef<\/h2>\n<ol>\n<li>Using the destination capacity instead of <code>capacity[target] - milk[target]<\/code>.<\/li>\n<li>Moving milk one unit at a time and making the running time depend on the capacity.<\/li>\n<li>Changing the source before calculating the complete transfer amount.<\/li>\n<li>Forgetting to wrap from bucket 3 back to bucket 1.<\/li>\n<li>Performing 99 or 101 pours instead of exactly 100.<\/li>\n<li>Trying to exploit a sample cycle without proving it, when 100 direct updates are simpler.<\/li>\n<li>Printing the three results on one line instead of three lines.<\/li>\n<\/ol>\n<h2>Review Questions<\/h2>\n<ol>\n<li>Why is the transfer the minimum of the source amount and destination free space?<\/li>\n<li>How does <code>turn % 3<\/code> generate the cyclic pouring order?<\/li>\n<li>Why should <code>transfer<\/code> be computed before either bucket is modified?<\/li>\n<li>Which quantity remains invariant, and how can it reveal a bug?<\/li>\n<li>If the number of pours were changed from 100 to <code>P<\/code>, what would the time complexity be?<\/li>\n<\/ol>\n<\/article>\n<\/div>\n<div class=\"ati-article-content ati-lang-zh\">\n<article class=\"ati-post-article\">\n<p>\u4e09\u4e2a\u5976\u6876\u6309\u56fa\u5b9a\u987a\u5e8f\u4e92\u76f8\u5012\u5976\uff1a1 \u53f7\u5012\u8fdb 2 \u53f7\uff0c2 \u53f7\u5012\u8fdb 3 \u53f7\uff0c3 \u53f7\u518d\u5012\u56de 1 \u53f7\uff0c\u5982\u6b64\u5faa\u73af 100 \u6b21\u3002\u9898\u76ee\u6ca1\u6709\u8981\u6c42\u6211\u4eec\u5bfb\u627e\u516c\u5f0f\u6216\u9884\u6d4b\u5f88\u8fdc\u7684\u672a\u6765\uff0c\u5b83\u771f\u6b63\u8003\u5bdf\u7684\u662f\u4e00\u9879\u7ade\u8d5b\u7f16\u7a0b\u57fa\u672c\u529f\uff1a\u80fd\u5426\u628a\u4e00\u6b21\u64cd\u4f5c\u5199\u51c6\u786e\uff0c\u518d\u6309\u6b63\u786e\u987a\u5e8f\u91cd\u590d\u3002<\/p>\n<p>Mixing Milk \u662f\u5f88\u9002\u5408\u5b66\u4e60 direct simulation \u7684 USACO Bronze \u771f\u9898\u3002\u6211\u4eec\u53ea\u9700\u8981\u7ef4\u62a4\u4e09\u4e2a\u6876\u5f53\u524d\u7684\u5976\u91cf\uff0c\u6bcf\u6b21\u8ba1\u7b97\u201c\u6700\u591a\u80fd\u5012\u591a\u5c11\u201d\uff0c\u540c\u6b65\u66f4\u65b0\u6e90\u6876\u548c\u76ee\u6807\u6876\u3002<\/p>\n<h2>\u672c\u9898\u5728 USACO \/ CP DSA \u5730\u56fe\u91cc\u7684\u4f4d\u7f6e<\/h2>\n<ul>\n<li>Level: USACO Bronze, Difficulty Band L1<\/li>\n<li>Pattern: Direct Simulation, Cyclic Updates, State Invariant<\/li>\n<li>Prerequisite: arrays\/lists, <code>for<\/code> loops, <code>min<\/code>, modulo <code>%<\/code>, assignment and subtraction<\/li>\n<li>What this teaches: \u628a\u9898\u76ee\u63cf\u8ff0\u62c6\u6210\u4e00\u4e2a\u7cbe\u786e\u3001\u53ef\u91cd\u590d\u7684\u72b6\u6001\u66f4\u65b0\uff0c\u5e76\u7528\u4e0d\u53d8\u91cf\u68c0\u67e5\u6a21\u62df\u662f\u5426\u53ef\u9760\u3002<\/li>\n<li>Where it appears again: process simulation, circular indexing, state machines, event-by-event updates<\/li>\n<\/ul>\n<h2>\u4e0b\u4e00\u6b65\u63a8\u8350<\/h2>\n<p>\u5982\u679c\u4f60\u5df2\u7ecf\u7406\u89e3 Mixing Milk\uff0c\u53ef\u4ee5\u7ee7\u7eed\u770b\uff1a<\/p>\n<ul>\n<li>\u76f8\u5173 CP Weekly \u771f\u9898\uff1a<a href=\"\/zh_cn\/ccc-2026-j4-snail-path-solution-analysis\/\">CCC 2026 J4 Snail Path<\/a>\uff08\u9010\u6b65\u6a21\u62df\u4e0e\u72b6\u6001\uff09\u3001<a href=\"\/zh_cn\/ccc-2017-s1-sum-game-solution-analysis\/\">CCC 2017 S1 Sum Game<\/a>\uff08running totals\uff09\u3001USACO 2019 January Bronze Shell Game\uff08\u591a\u79cd\u521d\u59cb\u72b6\u6001\u6a21\u62df\uff0cplanned\uff09<\/li>\n<li>\u76f8\u5173 Python \/ C++ \u57fa\u7840\uff1alist\/array\u3001<code>for<\/code> loop\u3001<code>min<\/code>\u3001<code>%<\/code> \u5faa\u73af\u4e0b\u6807\u3001\u540c\u65f6\u66f4\u65b0\u76f8\u5173\u72b6\u6001<\/li>\n<li>\u76f8\u5173 DSA \u4e13\u9898\uff1a<code>DSA-004<\/code> Dry Run \u662f\u4ec0\u4e48\uff1f\u7528\u72b6\u6001\u8868\u68c0\u67e5\u6a21\u62df\u987a\u5e8f\uff08planned\uff09<\/li>\n<\/ul>\n<aside class=\"ati-official-source\"><strong>\u5b98\u65b9\u6765\u6e90<\/strong><a href=\"https:\/\/usaco.org\/index.php?page=viewproblem2&amp;cpid=855\" target=\"_blank\" rel=\"noopener\">USACO 2018 December Bronze Problem 1: Mixing Milk<\/a> \u00b7 <a href=\"https:\/\/usaco.org\/current\/data\/sol_mixmilk_bronze_dec18.html\" target=\"_blank\" rel=\"noopener\">\u5b98\u65b9\u9898\u89e3<\/a><\/aside>\n<h2>\u9898\u76ee\u8981\u6211\u4eec\u505a\u4ec0\u4e48<\/h2>\n<p>Farmer John \u6709\u4e09\u4e2a\u5bb9\u91cf\u53ef\u80fd\u4e0d\u540c\u7684\u5976\u6876\u3002\u8f93\u5165\u7ed9\u51fa\u6bcf\u4e2a\u6876\u7684\uff1a<\/p>\n<pre><code class=\"language-text\">capacity = \u6876\u7684\u6700\u5927\u5bb9\u91cf\nmilk = \u6876\u91cc\u5f53\u524d\u7684\u5976\u91cf<\/code><\/pre>\n<p>\u5012\u5976\u987a\u5e8f\u56fa\u5b9a\u4e3a\uff1a<\/p>\n<pre><code class=\"language-text\">bucket 1 -&gt; bucket 2\nbucket 2 -&gt; bucket 3\nbucket 3 -&gt; bucket 1\n\u7136\u540e\u91cd\u590d<\/code><\/pre>\n<p>\u6bcf\u6b21\u5012\u5976\u90fd\u8981\u201c\u5c3d\u53ef\u80fd\u591a\u5730\u5012\u201d\uff0c\u76f4\u5230\u53d1\u751f\u4e0b\u9762\u81f3\u5c11\u4e00\u79cd\u60c5\u51b5\uff1a<\/p>\n<ul>\n<li>\u6e90\u6876\u53d8\u7a7a\u3002<\/li>\n<li>\u76ee\u6807\u6876\u53d8\u6ee1\u3002<\/li>\n<\/ul>\n<p>\u5b8c\u6210\u6070\u597d 100 \u6b21\u64cd\u4f5c\u540e\uff0c\u8f93\u51fa\u4e09\u4e2a\u6876\u6700\u7ec8\u7684\u5976\u91cf\uff0c\u6bcf\u4e2a\u7b54\u6848\u5360\u4e00\u884c\u3002<\/p>\n<p>\u5b98\u65b9\u7ea6\u675f\u4e3a <code>1 &lt;= milk &lt;= capacity &lt;= 10^9<\/code>\u3002\u6570\u503c\u867d\u7136\u5927\uff0c\u4f46\u6211\u4eec\u4e0d\u9700\u8981\u4e00\u5355\u4f4d\u4e00\u5355\u4f4d\u5730\u79fb\u52a8\u5976\uff1b\u4e00\u6b21\u5012\u5976\u53ef\u4ee5\u7528\u4e00\u4e2a\u516c\u5f0f\u5b8c\u6210\u3002<\/p>\n<h2>\u521d\u5b66\u8005\u5bb9\u6613\u5361\u5728\u54ea\u91cc<\/h2>\n<p>\u7b2c\u4e00\u4e2a\u8bef\u533a\u662f\u628a\u201c\u76ee\u6807\u6876\u5bb9\u91cf\u201d\u5f53\u6210\u8fd8\u80fd\u5012\u8fdb\u53bb\u7684\u91cf\u3002\u771f\u6b63\u7684\u5269\u4f59\u7a7a\u95f4\u662f\uff1a<\/p>\n<pre><code class=\"language-text\">free_space = capacity[target] - milk[target]<\/code><\/pre>\n<p>\u7b2c\u4e8c\u4e2a\u8bef\u533a\u662f\u53ea\u770b\u6e90\u6876\u6709\u591a\u5c11\u5976\u3002\u5b9e\u9645\u8f6c\u79fb\u91cf\u540c\u65f6\u53d7\u4e24\u4e2a\u6761\u4ef6\u9650\u5236\uff1a\u6e90\u6876\u6700\u591a\u63d0\u4f9b\u81ea\u5df1\u7684\u5168\u90e8\u5976\u91cf\uff0c\u76ee\u6807\u6876\u6700\u591a\u63a5\u6536\u81ea\u5df1\u7684\u5269\u4f59\u7a7a\u95f4\u3002<\/p>\n<p>\u7b2c\u4e09\u4e2a\u8bef\u533a\u662f\u66f4\u65b0\u987a\u5e8f\u3002\u5fc5\u987b\u5148\u628a <code>transfer<\/code> \u7b97\u597d\uff0c\u518d\u540c\u65f6\u51cf\u5c11\u6e90\u6876\u3001\u589e\u52a0\u76ee\u6807\u6876\u3002\u5982\u679c\u5148\u4fee\u6539\u6e90\u6876\uff0c\u518d\u62ff\u4fee\u6539\u540e\u7684\u6570\u503c\u8ba1\u7b97\u76ee\u6807\u6876\u589e\u52a0\u91cf\uff0c\u5c31\u4f1a\u628a\u672c\u6b21\u5012\u51fa\u7684\u5976\u91cf\u5f04\u4e22\u3002<\/p>\n<p>\u6700\u540e\u8fd8\u8981\u5c0f\u5fc3\u6b21\u6570\uff1a\u5faa\u73af\u662f 100 \u6b21\uff0c\u4e0d\u662f 99 \u6b21\u3002\u4f7f\u7528 <code>range(100)<\/code> \u6216 <code>turn &lt; 100<\/code>\uff0c\u4f1a\u6267\u884c\u7f16\u53f7\u4e3a <code>0<\/code> \u5230 <code>99<\/code> \u7684 100 \u6b21\u64cd\u4f5c\u3002<\/p>\n<h2>\u6838\u5fc3\u7b97\u6cd5\u6982\u5ff5<\/h2>\n<p>\u5bf9\u4e8e\u4e00\u6b21\u4ece <code>source<\/code> \u5012\u5411 <code>target<\/code> \u7684\u64cd\u4f5c\uff1a<\/p>\n<pre><code class=\"language-text\">source_milk = milk[source]\ntarget_space = capacity[target] - milk[target]\n\ntransfer = min(source_milk, target_space)<\/code><\/pre>\n<p>\u7136\u540e\u66f4\u65b0\uff1a<\/p>\n<pre><code class=\"language-text\">milk[source] -= transfer\nmilk[target] += transfer<\/code><\/pre>\n<p>\u4e3a\u4ec0\u4e48\u662f <code>min<\/code>\uff1f<\/p>\n<ul>\n<li>\u5982\u679c\u6e90\u6876\u91cc\u7684\u5976\u66f4\u5c11\uff0c\u5c31\u4f1a\u5148\u628a\u6e90\u6876\u5012\u7a7a\u3002<\/li>\n<li>\u5982\u679c\u76ee\u6807\u6876\u7684\u7a7a\u95f4\u66f4\u5c11\uff0c\u5c31\u4f1a\u5148\u628a\u76ee\u6807\u6876\u88c5\u6ee1\u3002<\/li>\n<\/ul>\n<p>\u4e24\u8005\u4e2d\u8f83\u5c0f\u7684\u90a3\u4e2a\uff0c\u6b63\u662f\u8fd9\u6b21\u5408\u6cd5\u64cd\u4f5c\u53ef\u4ee5\u8f6c\u79fb\u7684\u6700\u5927\u6570\u91cf\u3002<\/p>\n<h2>\u72b6\u6001\u5b9a\u4e49\u4e0e\u5faa\u73af\u987a\u5e8f<\/h2>\n<p>\u6211\u4eec\u7528\u4e24\u4e2a\u957f\u5ea6\u4e3a 3 \u7684\u6570\u7ec4\uff1a<\/p>\n<pre><code class=\"language-text\">capacity[i] = \u7b2c i \u4e2a\u6876\u7684\u56fa\u5b9a\u5bb9\u91cf\nmilk[i] = \u7b2c i \u4e2a\u6876\u5f53\u524d\u7684\u5976\u91cf<\/code><\/pre>\n<p>\u5bb9\u91cf\u4ece\u4e0d\u6539\u53d8\uff0c\u5976\u91cf\u4f1a\u5728\u6bcf\u6b21\u64cd\u4f5c\u540e\u6539\u53d8\u3002<\/p>\n<p>\u82e5 <code>turn<\/code> \u4ece <code>0<\/code> \u5f00\u59cb\uff0c\u5219\uff1a<\/p>\n<pre><code class=\"language-text\">source = turn % 3\ntarget = (source + 1) % 3<\/code><\/pre>\n<p><code>turn % 3<\/code> \u4f1a\u4ea7\u751f\u5faa\u73af\u5e8f\u5217 <code>0, 1, 2, 0, 1, 2, ...<\/code>\uff0c\u6070\u597d\u5bf9\u5e94\u4e09\u4e2a\u6e90\u6876\u3002<code>(source + 1) % 3<\/code> \u8ba9 2 \u53f7\u4e0b\u6807\u4e4b\u540e\u56de\u5230 0 \u53f7\u4e0b\u6807\u3002<\/p>\n<p>\u56e0\u6b64\u7b2c 100 \u6b21\u64cd\u4f5c\u5bf9\u5e94 <code>turn = 99<\/code>\uff1a<\/p>\n<pre><code class=\"language-text\">source = 99 % 3 = 0\ntarget = 1<\/code><\/pre>\n<p>\u4e5f\u5c31\u662f\u9898\u76ee\u8bf4\u660e\u7684 1 \u53f7\u6876\u5012\u8fdb 2 \u53f7\u6876\u3002<\/p>\n<h2>\u7528\u72b6\u6001\u8868 Dry Run<\/h2>\n<p>\u5b98\u65b9\u6837\u4f8b\u4ece\u5976\u91cf <code>[3, 4, 5]<\/code> \u5f00\u59cb\uff1a<\/p>\n<div class=\"ati-table-wrap\">\n<table>\n<thead>\n<tr>\n<th>\u5df2\u5b8c\u6210\u64cd\u4f5c\u6570<\/th>\n<th>Bucket 1<\/th>\n<th>Bucket 2<\/th>\n<th>Bucket 3<\/th>\n<th>\u672c\u6b21\u8f6c\u79fb<\/th>\n<\/tr>\n<\/thead>\n<tbody>\n<tr>\n<td>0<\/td>\n<td>3<\/td>\n<td>4<\/td>\n<td>5<\/td>\n<td>\u521d\u59cb\u72b6\u6001<\/td>\n<\/tr>\n<tr>\n<td>1<\/td>\n<td>0<\/td>\n<td>7<\/td>\n<td>5<\/td>\n<td><code>1 -&gt; 2<\/code>, \u8f6c\u79fb 3<\/td>\n<\/tr>\n<tr>\n<td>2<\/td>\n<td>0<\/td>\n<td>0<\/td>\n<td>12<\/td>\n<td><code>2 -&gt; 3<\/code>, \u8f6c\u79fb 7<\/td>\n<\/tr>\n<tr>\n<td>3<\/td>\n<td>10<\/td>\n<td>0<\/td>\n<td>2<\/td>\n<td><code>3 -&gt; 1<\/code>, \u8f6c\u79fb 10<\/td>\n<\/tr>\n<tr>\n<td>4<\/td>\n<td>0<\/td>\n<td>10<\/td>\n<td>2<\/td>\n<td><code>1 -&gt; 2<\/code>, \u8f6c\u79fb 10<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n<\/div>\n<p>\u72b6\u6001\u8868\u80fd\u5e2e\u52a9\u6211\u4eec\u68c0\u67e5\u4e09\u4e2a\u95ee\u9898\uff1a\u5012\u5976\u65b9\u5411\u662f\u5426\u6b63\u786e\u3001\u8f6c\u79fb\u91cf\u662f\u5426\u53d7\u5bb9\u91cf\u9650\u5236\u3001\u5faa\u73af\u6b21\u6570\u662f\u5426\u63a8\u8fdb\u3002<\/p>\n<h2>\u4e00\u4e2a\u91cd\u8981\u4e0d\u53d8\u91cf<\/h2>\n<p>\u6bcf\u6b21\u64cd\u4f5c\u90fd\u4ece\u4e00\u4e2a\u6876\u51cf\u53bb <code>transfer<\/code>\uff0c\u540c\u65f6\u5411\u53e6\u4e00\u4e2a\u6876\u52a0\u4e0a\u540c\u6837\u7684 <code>transfer<\/code>\uff1a<\/p>\n<pre><code class=\"language-text\">new_total\n= milk[source] - transfer\n + milk[target] + transfer\n= old_total<\/code><\/pre>\n<p>\u56e0\u6b64\u4e09\u4e2a\u6876\u7684\u603b\u5976\u91cf\u59cb\u7ec8\u4e0d\u53d8\u3002\u5b98\u65b9\u6837\u4f8b\u4e00\u5f00\u59cb\u662f\uff1a<\/p>\n<pre><code class=\"language-text\">3 + 4 + 5 = 12<\/code><\/pre>\n<p>\u4e4b\u540e\u6bcf\u4e00\u884c\u72b6\u6001\u7684\u603b\u548c\u4e5f\u5fc5\u987b\u662f 12\u3002\u5982\u679c dry run \u6216\u7a0b\u5e8f\u4e2d\u603b\u91cf\u53d8\u4e86\uff0c\u5c31\u8bf4\u660e\u66f4\u65b0\u903b\u8f91\u4e00\u5b9a\u6709\u9519\u8bef\u3002<\/p>\n<p>\u540c\u65f6\uff0c\u6bcf\u4e2a\u6876\u90fd\u5e94\u59cb\u7ec8\u6ee1\u8db3\uff1a<\/p>\n<pre><code class=\"language-text\">0 &lt;= milk[i] &lt;= capacity[i]<\/code><\/pre>\n<p>\u8fd9\u4e9b invariant \u4e0d\u76f4\u63a5\u4ea7\u751f\u7b54\u6848\uff0c\u5374\u662f\u8c03\u8bd5\u6a21\u62df\u9898\u975e\u5e38\u53ef\u9760\u7684\u68c0\u67e5\u5de5\u5177\u3002<\/p>\n<h2>Python \u89e3\u6cd5<\/h2>\n<pre><code class=\"language-python\">capacity = [0] * 3\nmilk = [0] * 3\n\nfor i in range(3):\n    capacity[i], milk[i] = map(int, input().split())\n\nfor turn in range(100):\n    source = turn % 3\n    target = (source + 1) % 3\n\n    free_space = capacity[target] - milk[target]\n    transfer = min(milk[source], free_space)\n\n    milk[source] -= transfer\n    milk[target] += transfer\n\nfor amount in milk:\n    print(amount)<\/code><\/pre>\n<p>\u8fd9\u4efd\u4ee3\u7801\u4f7f\u7528\u6807\u51c6\u8f93\u5165\u8f93\u51fa\uff0c\u4fbf\u4e8e\u5728\u73b0\u4ee3\u5728\u7ebf\u8bc4\u6d4b\u548c\u672c\u5730\u7ec8\u7aef\u8fd0\u884c\u3002\u5386\u53f2 USACO \u9898\u9762\u4f7f\u7528 <code>mixmilk.in<\/code> \u548c <code>mixmilk.out<\/code>\uff1b\u5982\u679c\u8bc4\u6d4b\u73af\u5883\u8981\u6c42\u6587\u4ef6\u8f93\u5165\u8f93\u51fa\uff0c\u53ea\u9700\u66ff\u6362\u8f93\u5165\u8f93\u51fa\u9002\u914d\u5c42\uff0c\u6838\u5fc3\u6a21\u62df\u4e0d\u53d8\u3002<\/p>\n<h2>C++ \u89e3\u6cd5<\/h2>\n<pre><code class=\"language-cpp\">#include &lt;algorithm&gt;\n#include &lt;array&gt;\n#include &lt;iostream&gt;\nusing namespace std;\n\nint main() {\n    ios::sync_with_stdio(false);\n    cin.tie(nullptr);\n\n    array&lt;long long, 3&gt; capacity{};\n    array&lt;long long, 3&gt; milk{};\n\n    for (int i = 0; i &lt; 3; i++) {\n        cin &gt;&gt; capacity[i] &gt;&gt; milk[i];\n    }\n\n    for (int turn = 0; turn &lt; 100; turn++) {\n        int source = turn % 3;\n        int target = (source + 1) % 3;\n\n        long long freeSpace = capacity[target] - milk[target];\n        long long transfer = min(milk[source], freeSpace);\n\n        milk[source] -= transfer;\n        milk[target] += transfer;\n    }\n\n    for (long long amount : milk) {\n        cout &lt;&lt; amount &lt;&lt; &#x27;\\n&#x27;;\n    }\n\n    return 0;\n}<\/code><\/pre>\n<p>C++ \u4f7f\u7528 <code>long long<\/code>\uff0c\u8fd9\u6837\u5373\u4f7f\u6211\u4eec\u5728\u8c03\u8bd5\u65f6\u8ba1\u7b97\u4e09\u4e2a\u6876\u7684\u603b\u5976\u91cf\uff0c\u4e5f\u80fd\u5b89\u5168\u5bb9\u7eb3\u6700\u591a\u7ea6 <code>3 x 10^9<\/code> \u7684\u603b\u548c\u3002<\/p>\n<h2>\u6b63\u786e\u6027\u8bf4\u660e<\/h2>\n<p>\u6bcf\u4e00\u8f6e\u4e2d\uff0c<code>transfer<\/code> \u4e0d\u8d85\u8fc7\u6e90\u6876\u5f53\u524d\u5976\u91cf\uff0c\u56e0\u6b64\u6e90\u6876\u4e0d\u4f1a\u53d8\u6210\u8d1f\u6570\uff1b\u5b83\u4e5f\u4e0d\u8d85\u8fc7\u76ee\u6807\u6876\u5269\u4f59\u7a7a\u95f4\uff0c\u56e0\u6b64\u76ee\u6807\u6876\u4e0d\u4f1a\u8d85\u8fc7\u5bb9\u91cf\u3002<\/p>\n<p>\u5982\u679c <code>transfer<\/code> \u7b49\u4e8e\u6e90\u6876\u5976\u91cf\uff0c\u6e90\u6876\u88ab\u5012\u7a7a\uff1b\u5982\u679c\u5b83\u7b49\u4e8e\u76ee\u6807\u6876\u5269\u4f59\u7a7a\u95f4\uff0c\u76ee\u6807\u6876\u88ab\u88c5\u6ee1\u3002\u56e0\u4e3a <code>transfer<\/code> \u662f\u8fd9\u4e24\u4e2a\u9650\u5236\u7684\u8f83\u5c0f\u503c\uff0c\u81f3\u5c11\u6709\u4e00\u4e2a\u505c\u6b62\u6761\u4ef6\u6210\u7acb\uff0c\u6240\u4ee5\u8fd9\u6b63\u662f\u9898\u76ee\u8981\u6c42\u7684\u6700\u5927\u5408\u6cd5\u8f6c\u79fb\u91cf\u3002<\/p>\n<p>\u5faa\u73af\u6309\u7167 <code>1 -&gt; 2 -&gt; 3 -&gt; 1<\/code> \u7684\u987a\u5e8f\u6267\u884c\u6070\u597d 100 \u6b21\u3002\u6bcf\u8f6e\u90fd\u6b63\u786e\u6a21\u62df\u9898\u76ee\u6307\u5b9a\u7684\u4e00\u6b21\u64cd\u4f5c\uff0c\u56e0\u6b64\u5faa\u73af\u7ed3\u675f\u540e\u7684\u4e09\u4e2a\u6570\u5c31\u662f\u6240\u6c42\u6700\u7ec8\u72b6\u6001\u3002<\/p>\n<h2>\u590d\u6742\u5ea6\u5206\u6790<\/h2>\n<p>\u82e5\u628a\u64cd\u4f5c\u6b21\u6570\u5199\u6210\u4e00\u822c\u7684 <code>P<\/code>\uff1a<\/p>\n<pre><code class=\"language-text\">Time: O(P)\nSpace: O(1)<\/code><\/pre>\n<p>\u672c\u9898\u56fa\u5b9a <code>P = 100<\/code>\uff0c\u56e0\u6b64\u4ece\u8f93\u5165\u89c4\u6a21\u89d2\u5ea6\u770b\uff0c\u8fd0\u884c\u65f6\u95f4\u548c\u989d\u5916\u7a7a\u95f4\u90fd\u662f\u5e38\u6570\u7ea7\u3002\u5927\u5bb9\u91cf\u4e0d\u4f1a\u589e\u52a0\u5faa\u73af\u6b21\u6570\u3002<\/p>\n<h2>\u5e38\u89c1\u9519\u8bef<\/h2>\n<ol>\n<li>\u4f7f\u7528 <code>capacity[target]<\/code> \u4f5c\u4e3a\u53ef\u63a5\u6536\u91cf\uff0c\u800c\u4e0d\u662f <code>capacity[target] - milk[target]<\/code>\u3002<\/li>\n<li>\u4e00\u5355\u4f4d\u4e00\u5355\u4f4d\u5730\u5012\u5976\uff0c\u5bfc\u81f4\u628a\u5bb9\u91cf\u5927\u5c0f\u8bef\u5f53\u6210\u8fd0\u884c\u65f6\u95f4\u3002<\/li>\n<li>\u5728\u8ba1\u7b97\u5b8c\u6574\u7684 <code>transfer<\/code> \u4e4b\u524d\u5148\u4fee\u6539\u6e90\u6876\u3002<\/li>\n<li>\u628a\u987a\u5e8f\u5199\u6210 <code>1 -&gt; 2 -&gt; 3<\/code> \u540e\u505c\u6b62\uff0c\u6ca1\u6709\u5faa\u73af\u56de 1 \u53f7\u6876\u3002<\/li>\n<li>\u6267\u884c 99 \u6b21\u6216 101 \u6b21\uff0c\u800c\u4e0d\u662f\u6070\u597d 100 \u6b21\u3002<\/li>\n<li>\u770b\u5230\u6837\u4f8b\u51fa\u73b0\u91cd\u590d\u72b6\u6001\u540e\u76f4\u63a5\u4f7f\u7528 cycle shortcut\uff0c\u5374\u6ca1\u6709\u8bc1\u660e\u5468\u671f\uff1b\u672c\u9898\u76f4\u63a5\u505a 100 \u6b21\u66f4\u7b80\u5355\u53ef\u9760\u3002<\/li>\n<li>\u5fd8\u8bb0\u8f93\u51fa\u4e09\u4e2a\u7b54\u6848\u5404\u5360\u4e00\u884c\u3002<\/li>\n<\/ol>\n<h2>\u590d\u4e60\u95ee\u9898<\/h2>\n<ol>\n<li>\u4e3a\u4ec0\u4e48\u8f6c\u79fb\u91cf\u662f\u6e90\u6876\u5976\u91cf\u4e0e\u76ee\u6807\u6876\u5269\u4f59\u7a7a\u95f4\u7684\u8f83\u5c0f\u503c\uff1f<\/li>\n<li><code>turn % 3<\/code> \u5982\u4f55\u751f\u6210\u5faa\u73af\u7684\u5012\u5976\u987a\u5e8f\uff1f<\/li>\n<li>\u4e3a\u4ec0\u4e48\u5fc5\u987b\u5728\u4fee\u6539\u4e24\u4e2a\u6876\u4e4b\u524d\u5148\u7b97\u51fa <code>transfer<\/code>\uff1f<\/li>\n<li>\u54ea\u4e2a\u6570\u91cf\u5728\u6240\u6709\u64cd\u4f5c\u4e2d\u4fdd\u6301\u4e0d\u53d8\uff1f\u5b83\u5982\u4f55\u5e2e\u52a9\u8c03\u8bd5\uff1f<\/li>\n<li>\u5982\u679c\u64cd\u4f5c\u6b21\u6570\u4ece 100 \u6539\u6210 <code>P<\/code>\uff0c\u7b97\u6cd5\u590d\u6742\u5ea6\u662f\u4ec0\u4e48\uff1f<\/li>\n<\/ol>\n<\/article>\n<\/div>\n<section class=\"ati-feedback-cta ati-lang-en\" data-ati-feedback>\n<div class=\"ati-feedback-copy\">\n<p class=\"ati-feedback-title\">\u6709\u95ee\u9898\u6216\u5efa\u8bae\uff1f<\/p>\n<p class=\"ati-feedback-note\">\u5982\u679c\u4f60\u5bf9\u672c\u6587\u6709\u7591\u95ee\uff0c\u6216\u5e0c\u671b\u63d0\u51fa\u6539\u8fdb\u5efa\u8bae\uff0c\u8bf7\u7ed9\u6211\u4eec\u53d1\u9001\u79c1\u5bc6\u7559\u8a00\u3002<\/p>\n<\/div>\n<p>  <a class=\"ati-feedback-button\" href=\"\/zh_cn\/contact\/\" data-ati-feedback-link>\u53d1\u9001\u53cd\u9988<\/a><br>\n<\/p><\/section>\n<section class=\"ati-feedback-cta ati-lang-zh\" data-ati-feedback>\n<div class=\"ati-feedback-copy\">\n<p class=\"ati-feedback-title\">\u6709\u95ee\u9898\u6216\u5efa\u8bae\uff1f<\/p>\n<p class=\"ati-feedback-note\">\u5982\u679c\u4f60\u5bf9\u672c\u6587\u6709\u7591\u95ee\uff0c\u6216\u5e0c\u671b\u63d0\u51fa\u6539\u8fdb\u5efa\u8bae\uff0c\u8bf7\u7ed9\u6211\u4eec\u53d1\u9001\u79c1\u5bc6\u7559\u8a00\u3002<\/p>\n<\/div>\n<p>  <a class=\"ati-feedback-button\" href=\"\/zh_cn\/contact\/\" data-ati-feedback-link>\u53d1\u9001\u53cd\u9988<\/a><br>\n<\/p><\/section>\n<div class=\"ati-article-back ati-lang-en\">\n  <a href=\"\/zh_cn\/cp-weekly-challenge\/\">Back to CP Weekly Challenge<\/a>\n<\/div>\n<div class=\"ati-article-back ati-lang-zh\">\n  <a href=\"\/zh_cn\/cp-weekly-challenge\/\">\u8fd4\u56de CP \u6bcf\u5468\u7f16\u7a0b\u6311\u6218<\/a>\n<\/div>\n<\/article>\n<\/section>\n<p>    <\/p>\n<footer class=\"ati-footer\">\n      <a class=\"ati-brand ati-logo\" href=\"\/zh_cn\/\" aria-label=\"Accel Thinking home\"><img loading=\"lazy\" decoding=\"async\" height=\"63\" width=\"366\" src=\"https:\/\/i0.wp.com\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png?w=480&amp;quality=85&amp;ssl=1\" alt=\"Accel Thinking\"><\/a>\n<nav><a class=\"\" href=\"\/zh_cn\/\">\u9996\u9875<\/a><a class=\"\" href=\"\/zh_cn\/northstar\/\">\u5317\u6781\u661f<\/a><a class=\"\" href=\"\/zh_cn\/learning\/\">\u5b66\u4e60\u8def\u5f84<\/a><a class=\"active\" href=\"\/zh_cn\/resources\/\">\u8d44\u6e90\u6587\u7ae0<\/a><a class=\"\" href=\"\/zh_cn\/about\/\">\u5173\u4e8e\u6211\u4eec<\/a><a class=\"\" href=\"\/zh_cn\/contact\/\">\u8054\u7cfb\u6211\u4eec<\/a><a class=\"\" href=\"\/zh_cn\/privacy-policy\/\">\u9690\u79c1\u653f\u7b56<\/a><a class=\"\" href=\"\/zh_cn\/terms-and-conditions\/\">\u6761\u6b3e\u4e0e\u6761\u4ef6<\/a><\/nav>\n<address><a href=\"mailto:info@accelthinking.com\">info@accelthinking.com<\/a><a href=\"tel:+18556265066\">Toll-free: 1-855-626-5066<\/a><span>\u52a0\u62ff\u5927\u5b89\u5927\u7565\u7701\u5965\u514b\u7ef4\u5c14<\/span><\/address>\n<\/footer><\/div>\n<p><\/p>\n<style data-source=\"ati_article_share_tools\">\n.ati-share-tools{margin:0 0 30px!important;padding:20px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:8px}\n.ati-share-tools p{margin:0!important}\n.ati-share-tools .ati-share-kicker{color:#b47c00!important;font-size:13px!important;font-weight:900!important;text-transform:uppercase;letter-spacing:.08em}\n.ati-share-note{margin-top:6px!important;color:#475569!important;font-size:15px!important;line-height:1.45!important}\n.ati-share-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:16px}\n.ati-share-actions button,.ati-share-actions a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:0 13px;border:1px solid #cbd5e1;border-radius:8px;background:#fff;color:#0f172a!important;font:inherit;font-size:13px;font-weight:900;line-height:1;cursor:pointer;text-decoration:none!important}\n.ati-share-actions button:hover,.ati-share-actions a:hover{border-color:#ffc400;background:#fff7d6}\n.ati-share-actions [data-share-copy-link],.ati-share-actions [data-share-native]{background:#ffc400;border-color:#ffc400;color:#050505!important}\n.ati-share-qr{display:flex;gap:14px;align-items:center;margin-top:16px;padding:14px;background:#fff;border:1px solid #e2e8f0;border-radius:8px}\n.ati-share-qr[hidden]{display:none!important}.ati-share-qr img{width:118px;height:118px;border-radius:6px}.ati-share-qr p{color:#475569!important;font-size:14px!important;line-height:1.4!important}\n.ati-share-status{min-height:18px;margin-top:10px!important;color:#0f766e!important;font-size:13px!important;font-weight:800!important}\n@media(max-width:640px){.ati-share-actions button,.ati-share-actions a{width:100%}.ati-share-qr{align-items:flex-start}.ati-share-qr img{width:104px;height:104px}}\n<\/style>\n<p><script data-source=\"ati_article_share_tools\">\n(function(){\n  function text(isZh, en, zh){ return isZh ? zh : en; }\n  function copyText(value, status, message){\n    function done(){ if(status) status.textContent = message; }\n    function fallback(){\n      var input = document.createElement('textarea');\n      input.value = value;\n      input.setAttribute('readonly', '');\n      input.style.position = 'fixed';\n      input.style.left = '-9999px';\n      document.body.appendChild(input);\n      input.select();\n      try { document.execCommand('copy'); } catch(e) {}\n      document.body.removeChild(input);\n      done();\n    }\n    if (navigator.clipboard && navigator.clipboard.writeText) {\n      navigator.clipboard.writeText(value).then(done).catch(fallback);\n    } else fallback();\n  }\n  document.querySelectorAll('[data-ati-share]').forEach(function(box){\n    if (box.dataset.ready) return;\n    box.dataset.ready = '1';\n    var isZh = location.pathname.toLowerCase().includes('\/zh_cn\/');\n    var pageUrl = location.origin + location.pathname;\n    var title = (document.querySelector('.ati-hero h1') || document.querySelector('h1'))?.innerText.trim() || document.title.replace(\/\\s+-\\s+.*$\/, '');\n    var status = box.querySelector('[data-share-status]');\n    var note = box.querySelector('.ati-share-note');\n    var kicker = box.querySelector('.ati-share-kicker');\n    var qrText = box.querySelector('.ati-share-qr p');\n    if (isZh) {\n      kicker.textContent = '\u5206\u4eab\u8fd9\u7bc7\u6587\u7ae0';\n      note.textContent = '\u590d\u5236\u94fe\u63a5\u3001\u8c03\u7528\u624b\u673a\u5206\u4eab\u9762\u677f\u3001\u7528\u5fae\u4fe1\u626b\u7801\uff0c\u6216\u901a\u8fc7\u90ae\u4ef6\u53d1\u9001\u3002';\n      qrText.textContent = '\u7528\u5fae\u4fe1\u626b\u7801\u540e\uff0c\u53ef\u5c06\u6587\u7ae0\u94fe\u63a5\u8f6c\u53d1\u7ed9\u597d\u53cb\u6216\u7fa4\u804a\u3002';\n    }\n    var labels = {\n      '[data-share-native]': text(isZh, 'Share', '\u7cfb\u7edf\u5206\u4eab'),\n      '[data-share-copy-link]': text(isZh, 'Copy Link', '\u590d\u5236\u94fe\u63a5'),\n      '[data-share-wechat]': text(isZh, 'WeChat QR', '\u5fae\u4fe1\u4e8c\u7ef4\u7801')\n    };\n    Object.keys(labels).forEach(function(sel){ var el = box.querySelector(sel); if(el) el.textContent = labels[sel]; });\n    var email = box.querySelector('[data-share-email]');\n    if (email) email.href = 'mailto:?subject=' + encodeURIComponent(title) + '&body=' + encodeURIComponent(title + '\\n\\n' + pageUrl);\n    var qrImg = box.querySelector('[data-share-qr-img]');\n    if (qrImg) qrImg.src = 'https:\/\/api.qrserver.com\/v1\/create-qr-code\/?size=180x180&data=' + encodeURIComponent(pageUrl);\n    var nativeBtn = box.querySelector('[data-share-native]');\n    if (nativeBtn) nativeBtn.addEventListener('click', function(){\n      if (navigator.share) {\n        navigator.share({title:title, url:pageUrl}).catch(function(){});\n      } else {\n        copyText(pageUrl, status, text(isZh, 'Link copied. You can paste it into any app.', '\u94fe\u63a5\u5df2\u590d\u5236\uff0c\u53ef\u7c98\u8d34\u5230\u4efb\u610f\u5e94\u7528\u3002'));\n      }\n    });\n    var copyBtn = box.querySelector('[data-share-copy-link]');\n    if (copyBtn) copyBtn.addEventListener('click', function(){\n      copyText(pageUrl, status, text(isZh, 'Link copied.', '\u94fe\u63a5\u5df2\u590d\u5236\u3002'));\n    });\n    var qrBtn = box.querySelector('[data-share-wechat]');\n    if (qrBtn) qrBtn.addEventListener('click', function(){\n      var qr = box.querySelector('[data-share-qr]');\n      if (qr) qr.hidden = !qr.hidden;\n    });\n  });\n})();\n<\/script><\/p>\n<style data-source=\"ati_usaco_2018_december_bronze_mixing_milk_article_assets\">\n.entry-content>p:has(>script){display:none!important;height:0!important;margin:0!important;padding:0!important;overflow:hidden!important;line-height:0!important}\n.ati-lang-zh{display:none!important}\nhtml[lang^=\"zh\"] .ati-lang-en,body.translatepress-zh_CN .ati-lang-en{display:none!important}\nhtml[lang^=\"zh\"] .ati-lang-zh,body.translatepress-zh_CN .ati-lang-zh{display:block!important}\nhtml[lang^=\"zh\"] section.ati-lang-zh,body.translatepress-zh_CN section.ati-lang-zh{display:grid!important}\nhtml[lang^=\"zh\"] .ati-feedback-cta.ati-lang-zh,body.translatepress-zh_CN .ati-feedback-cta.ati-lang-zh{display:flex!important}\n.ati-hero>div>p:not(.ati-label){line-height:1.55!important}\n.ati-hero .ati-article-meta{line-height:1.4!important}\n.ati-hero .ati-side p{line-height:1.45!important}\n.ati-share-kicker{margin-bottom:6px!important;line-height:1.3!important}\n.ati-post-article pre{margin:18px 0 24px!important;padding:18px 20px!important;overflow:auto;border:1px solid #263244;border-radius:8px;background:#0f172a!important;color:#e5e7eb!important;font-size:14px!important;line-height:1.55!important}\n.ati-post-article pre code{display:block;padding:0!important;background:transparent!important;color:inherit!important;white-space:pre!important}\n.ati-post-article code{padding:.14em .34em;border-radius:4px;background:#eef2f7;color:#0f172a;font-size:.92em}\n.ati-post-article h3{margin:30px 0 12px!important;color:#0f172a!important;font-size:23px!important;font-weight:900!important;line-height:1.25!important}\n.ati-post-article ul,.ati-post-article ol{margin:12px 0 22px!important;padding-left:24px!important;color:#334155}\n.ati-post-article li{margin:8px 0!important;line-height:1.65!important}\n.ati-post-article .ati-table-wrap{margin:18px 0 26px;overflow-x:auto;border:1px solid #e2e8f0;border-radius:8px;background:#fff}\n.ati-post-article table{width:100%;border-collapse:collapse;color:#334155;font-size:14px;line-height:1.45}\n.ati-post-article th{background:#f8fafc;color:#0f172a;font-weight:900;text-align:left}\n.ati-post-article th,.ati-post-article td{padding:11px 13px;border-bottom:1px solid #e2e8f0;vertical-align:top}\n.ati-post-article tr:last-child td{border-bottom:0}\n.ati-official-source{margin:26px 0;padding:18px 20px;border:1px solid #dbe4ef;border-left:4px solid #ffc400;border-radius:8px;background:#f8fafc;color:#334155;font-size:14px;line-height:1.55}\n.ati-official-source strong{display:block;margin-bottom:5px;color:#0f172a;font-size:15px}\n.ati-official-source a{color:#8a5e00!important;font-weight:800;text-decoration:underline!important}\n.ati-feedback-cta{display:flex;align-items:center;justify-content:space-between;gap:24px;margin:34px 0 24px;padding:22px 24px;border:1px solid #e2e8f0;border-left:4px solid #ffc400;border-radius:8px;background:#f8fafc}\n.ati-feedback-copy{min-width:0}\n.ati-feedback-cta p{margin:0!important}\n.ati-feedback-title{color:#0f172a!important;font-size:20px!important;font-weight:900!important;line-height:1.25!important}\n.ati-feedback-note{max-width:650px;margin-top:7px!important;color:#475569!important;font-size:15px!important;line-height:1.55!important}\n.ati-feedback-button{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-height:44px;padding:0 18px;border:1px solid #ffc400;border-radius:7px;background:#ffc400;color:#050505!important;font-size:14px;font-weight:900;text-decoration:none!important;white-space:nowrap;transition:background .18s ease,border-color .18s ease,transform .18s ease}\n.ati-feedback-button:hover{border-color:#d69e00;background:#ffd84d;transform:translateY(-1px)}\n@media(max-width:700px){.ati-feedback-cta{align-items:stretch;flex-direction:column;padding:20px}.ati-feedback-button{width:100%}}\n<\/style>\n<p><script data-source=\"ati_usaco_2018_december_bronze_mixing_milk_zh_20260928\">\n(function(){\n  if (location.pathname.indexOf('\/zh_cn\/') === -1) return;\n  document.title = \"USACO 2018 December Bronze Mixing Milk \u9898\u89e3\uff1a\u7528\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976 | \u52a0\u901f\u5ea6\u601d\u7ef4\";\n  document.querySelectorAll('.entry-title').forEach(function(el) { el.textContent = \"USACO 2018 December Bronze Mixing Milk \u9898\u89e3\uff1a\u7528\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\"; });\n})();\n<\/script><script data-source=\"ati_article_feedback_cta\">\n(function(){\n  var cta = document.querySelector('[data-ati-feedback]');\n  if (!cta) return;\n  var isZh = location.pathname.indexOf('\/zh_cn\/') !== -1;\n  var contactPath = isZh ? '\/zh_cn\/contact\/' : '\/contact\/';\n  var articleTitle = (document.querySelector('.entry-title') || document.querySelector('.ati-hero h1') || {}).textContent || document.title || '';\n  var link = cta.querySelector('[data-ati-feedback-link]');\n  if (link) {\n    link.href = contactPath + '?ati_source=article&article_title=' + encodeURIComponent(articleTitle.trim()) + '&article_url=' + encodeURIComponent(location.href.split('#')[0]) + '#wpforms-form-76';\n  }\n})();\n<\/script><\/p>\n<p><script data-source=\"ati_strategy_phase1_nav_20260712\">\n(function(){\n  var base = 'https:\/\/accelthinking.com';\n  var isZh = location.pathname.toLowerCase().includes('\/zh_cn\/');\n  var t = {\"Home\": \"\u9996\u9875\", \"NorthStar\": \"\u5317\u6781\u661f\u6d4b\u8bc4\", \"Learning\": \"\u5b66\u4e60\u8def\u5f84\", \"Resources\": \"\u8d44\u6e90\u6587\u7ae0\", \"About\": \"\u5173\u4e8e\u6211\u4eec\", \"Contact\": \"\u8054\u7cfb\u6211\u4eec\", \"Start NorthStar\": \"\u5f00\u59cb\u5317\u6781\u661f\u6d4b\u8bc4\", \"Privacy Policy\": \"\u9690\u79c1\u653f\u7b56\", \"Terms & Conditions\": \"\u6761\u6b3e\u4e0e\u6761\u4ef6\", \"Close\": \"\u5173\u95ed\"};\n  var path = location.pathname.toLowerCase();\n  if (path.slice(-1) !== '\/') path += '\/';\n  var basePath = new URL(base).pathname.toLowerCase();\n  if (!basePath || basePath === '\/') basePath = '\/';\n  else basePath = basePath.replace(\/\\\/?$\/, '\/');\n  var zhHomePath = basePath === '\/' ? '\/zh_cn\/' : basePath + 'zh_cn\/';\n  function item(label, href, key) {\n    var active = false;\n    if (key === 'home') active = path === basePath || path === zhHomePath;\n    if (key !== 'home') active = path.indexOf('\/' + key + '\/') !== -1;\n    if (key === 'northstar') {\n      active = active || path.indexOf('\/northstar-quick-assessment\/') !== -1 || path.indexOf('\/northstar-assessment\/') !== -1 || path.indexOf('\/northstar-report\/') !== -1;\n    }\n    if (key === 'learning') {\n      active = active || path.indexOf('\/cp-academy\/') !== -1 || path.indexOf('\/python-programming-pathway\/') !== -1 || path.indexOf('\/ai-literacy\/') !== -1 || path.indexOf('\/python-assessment\/') !== -1;\n    }\n    if (key === 'resources') {\n      active = active || path.indexOf('\/resources\/') !== -1 || document.body.classList.contains('single-post');\n    }\n    return '<a class=\"' + (active ? 'active' : '') + '\" href=\"' + href + '\">' + (isZh ? (t[label] || label) : label) + '<\/a>';\n  }\n  function primary() {\n    return [\n      item('Home', base + '\/', 'home'),\n      item('NorthStar', base + '\/northstar\/', 'northstar'),\n      item('Learning', base + '\/learning\/', 'learning'),\n      item('Resources', base + '\/resources\/', 'resources'),\n      item('About', base + '\/about\/', 'about'),\n      item('Contact', base + '\/contact\/', 'contact')\n    ].join('');\n  }\n  function mobile() {\n    return primary() + '<a class=\"ati-mobile-cta\" href=\"' + base + '\/northstar\/\">' + (isZh ? t['Start NorthStar'] : 'Start NorthStar') + '<\/a><a class=\"ati-mobile-close\" href=\"#\">' + (isZh ? t.Close : 'Close') + '<\/a>';\n  }\n  document.querySelectorAll('.ati-nav,.ns-nav').forEach(function(nav) { nav.innerHTML = primary(); });\n  document.querySelectorAll('.ati-mobile-panel,.ati-mobile-nav-panel').forEach(function(nav) { nav.innerHTML = mobile(); });\n  document.querySelectorAll('.ati-footer nav,.ns-footer nav').forEach(function(nav) {\n    nav.innerHTML = primary() + item('Privacy Policy', base + '\/privacy-policy\/', 'privacy-policy') + item('Terms & Conditions', base + '\/terms-and-conditions\/', 'terms-and-conditions');\n  });\n  document.querySelectorAll('.ati-footer address,.ns-footer address').forEach(function(address) {\n    address.innerHTML = '<a href=\"mailto:info@accelthinking.com\">info@accelthinking.com<\/a><a href=\"tel:+18556265066\">' + (isZh ? '\u514d\u8d39\u7535\u8bdd\uff1a1-855-626-5066' : 'Toll-free: 1-855-626-5066') + '<\/a><span>' + (isZh ? '\u52a0\u62ff\u5927\u5b89\u5927\u7565\u7701\u5965\u514b\u7ef4\u5c14' : 'Oakville, Ontario, Canada') + '<\/span>';\n  });\n  document.querySelectorAll('.ati-header-cta,.ns-header-cta').forEach(function(a) {\n    a.href = base + '\/northstar\/';\n    a.textContent = isZh ? t['Start NorthStar'] : 'Start NorthStar';\n  });\n})();\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Learn the USACO 2018 December Bronze Mixing Milk solution with direct simulation, cyclic updates, invariants, and tested Python and C++ code.<\/p>","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"nf_dc_page":"","om_disable_all_campaigns":false,"_monsterinsights_skip_tracking":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_post_was_ever_published":false},"categories":[7],"tags":[42,43,54,55,56,57,58,47,48,59],"class_list":["post-1911","post","type-post","status-publish","format-standard","hentry","category-cp-weekly-challenge","tag-c","tag-competitive-programming","tag-cyclic-updates","tag-december-2018","tag-direct-simulation","tag-invariant","tag-mixing-milk","tag-python","tag-usaco","tag-usaco-bronze"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.7 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976<\/title>\n<meta name=\"description\" content=\"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\" \/>\n<meta property=\"og:description\" content=\"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002\" \/>\n<meta property=\"og:url\" content=\"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/\" \/>\n<meta property=\"og:site_name\" content=\"Accel Thinking\" \/>\n<meta property=\"article:published_time\" content=\"2026-09-28T16:11:12+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-10-03T19:13:17+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/accelthinking.com\/wp-content\/plugins\/accel-analytics\/assets\/accel-thinking-og.png\" \/>\n<meta name=\"author\" content=\"ATI Builder\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:title\" content=\"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\" \/>\n<meta name=\"twitter:description\" content=\"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002\" \/>\n<meta name=\"twitter:image\" content=\"https:\/\/accelthinking.com\/wp-content\/plugins\/accel-analytics\/assets\/accel-thinking-og.png\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"ATI Builder\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"9 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\"},\"author\":{\"name\":\"ATI Builder\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#\\\/schema\\\/person\\\/bb7b104098a9c6c91f4fe54c4ab4a348\"},\"headline\":\"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\",\"datePublished\":\"2026-09-28T16:11:12+00:00\",\"dateModified\":\"2026-10-03T19:13:17+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\"},\"wordCount\":1272,\"image\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\",\"keywords\":[\"C++\",\"Competitive Programming\",\"Cyclic Updates\",\"December 2018\",\"Direct Simulation\",\"Invariant\",\"Mixing Milk\",\"Python\",\"USACO\",\"USACO Bronze\"],\"articleSection\":[\"CP Weekly Challenge\"],\"inLanguage\":\"zh-CN\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\",\"url\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\",\"name\":\"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\",\"datePublished\":\"2026-09-28T16:11:12+00:00\",\"dateModified\":\"2026-10-03T19:13:17+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#\\\/schema\\\/person\\\/bb7b104098a9c6c91f4fe54c4ab4a348\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#breadcrumb\"},\"inLanguage\":\"zh-CN\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-CN\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#primaryimage\",\"url\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\",\"contentUrl\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\"},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/accelthinking.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976\",\"item\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/usaco-2018-december-bronze-mixing-milk-solution-analysis\\\/\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#website\",\"url\":\"https:\\\/\\\/accelthinking.com\\\/\",\"name\":\"Accel Thinking\",\"description\":\"\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/accelthinking.com\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"zh-CN\"},{\"@type\":\"Person\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#\\\/schema\\\/person\\\/bb7b104098a9c6c91f4fe54c4ab4a348\",\"name\":\"ATI Builder\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-CN\",\"@id\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g\",\"url\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g\",\"contentUrl\":\"https:\\\/\\\/secure.gravatar.com\\\/avatar\\\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g\",\"caption\":\"ATI Builder\"},\"url\":\"https:\\\/\\\/accelthinking.com\\\/zh_cn\\\/author\\\/ati-builder\\\/\"}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","description":"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/","og_locale":"zh_CN","og_type":"article","og_title":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","og_description":"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002","og_url":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/","og_site_name":"Accel Thinking","article_published_time":"2026-09-28T16:11:12+00:00","article_modified_time":"2026-10-03T19:13:17+00:00","og_image":[{"url":"https:\/\/accelthinking.com\/wp-content\/plugins\/accel-analytics\/assets\/accel-thinking-og.png","type":"","width":"","height":""}],"author":"ATI Builder","twitter_card":"summary_large_image","twitter_title":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","twitter_description":"\u7cbe\u786e\u6a21\u62df 100 \u6b21\u5faa\u73af\u5012\u5976\uff0c\u7528\u72b6\u6001\u66f4\u65b0\u548c\u603b\u5976\u91cf\u4e0d\u53d8\u91cf\u68c0\u67e5\u5b9e\u73b0\u662f\u5426\u53ef\u9760\u3002","twitter_image":"https:\/\/accelthinking.com\/wp-content\/plugins\/accel-analytics\/assets\/accel-thinking-og.png","twitter_misc":{"Written by":"ATI Builder","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#article","isPartOf":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/"},"author":{"name":"ATI Builder","@id":"https:\/\/accelthinking.com\/#\/schema\/person\/bb7b104098a9c6c91f4fe54c4ab4a348"},"headline":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","datePublished":"2026-09-28T16:11:12+00:00","dateModified":"2026-10-03T19:13:17+00:00","mainEntityOfPage":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/"},"wordCount":1272,"image":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#primaryimage"},"thumbnailUrl":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","keywords":["C++","Competitive Programming","Cyclic Updates","December 2018","Direct Simulation","Invariant","Mixing Milk","Python","USACO","USACO Bronze"],"articleSection":["CP Weekly Challenge"],"inLanguage":"zh-CN"},{"@type":"WebPage","@id":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/","url":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/","name":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","isPartOf":{"@id":"https:\/\/accelthinking.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#primaryimage"},"image":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#primaryimage"},"thumbnailUrl":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","datePublished":"2026-09-28T16:11:12+00:00","dateModified":"2026-10-03T19:13:17+00:00","author":{"@id":"https:\/\/accelthinking.com\/#\/schema\/person\/bb7b104098a9c6c91f4fe54c4ab4a348"},"breadcrumb":{"@id":"https:\/\/accelthinking.com\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#breadcrumb"},"inLanguage":"zh-CN","potentialAction":[{"@type":"ReadAction","target":["https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/"]}]},{"@type":"ImageObject","inLanguage":"zh-CN","@id":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#primaryimage","url":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","contentUrl":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png"},{"@type":"BreadcrumbList","@id":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/accelthinking.com\/"},{"@type":"ListItem","position":2,"name":"USACO Mixing Milk \u9898\u89e3\uff1a\u5faa\u73af\u6a21\u62df 100 \u6b21\u5012\u5976","item":"https:\/\/accelthinking.com\/zh_cn\/usaco-2018-december-bronze-mixing-milk-solution-analysis\/"}]},{"@type":"WebSite","@id":"https:\/\/accelthinking.com\/#website","url":"https:\/\/accelthinking.com\/","name":"Accel Thinking","description":"","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/accelthinking.com\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"zh-CN"},{"@type":"Person","@id":"https:\/\/accelthinking.com\/#\/schema\/person\/bb7b104098a9c6c91f4fe54c4ab4a348","name":"ATI Builder","image":{"@type":"ImageObject","inLanguage":"zh-CN","@id":"https:\/\/secure.gravatar.com\/avatar\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/c77af32770dc7e2c3451795691a8d8e3e2d0c9faa5af72043c703fa202bdcd81?s=96&d=mm&r=g","caption":"ATI Builder"},"url":"https:\/\/accelthinking.com\/zh_cn\/author\/ati-builder\/"}]}},"jetpack_sharing_enabled":true,"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1911","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/comments?post=1911"}],"version-history":[{"count":1,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1911\/revisions"}],"predecessor-version":[{"id":1912,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1911\/revisions\/1912"}],"wp:attachment":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/media?parent=1911"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/categories?post=1911"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/tags?post=1911"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}