{"id":1233,"date":"2026-07-04T19:24:47","date_gmt":"2026-07-04T19:24:47","guid":{"rendered":"https:\/\/accelthinking.com\/?p=1233"},"modified":"2026-07-04T19:31:02","modified_gmt":"2026-07-04T19:31:02","slug":"ccc-2023-j5-word-hunt-solution-analysis","status":"publish","type":"post","link":"https:\/\/accelthinking.com\/zh_cn\/ccc-2023-j5-word-hunt-solution-analysis\/","title":{"rendered":"CCC 2023 J5 &#8211; Word Hunt Solution &#038; Analysis"},"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:0!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:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/hero-technology-education-51.png)\">\n<header class=\"ati-top\">\n      <a class=\"ati-brand ati-logo\" href=\"\/\" aria-label=\"Accel Thinking home\"><img data-recalc-dims=\"1\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png?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><\/p>\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=\"\/\">Home<\/a><a class=\"\" href=\"\/solutions\/\">Solutions<\/a><a class=\"\" href=\"\/cp-academy\/\">CP Academy<\/a><a class=\"\" href=\"\/ai-literacy\/\">AI Literacy<\/a><a class=\"active\" href=\"\/resources\/\">Resources<\/a><a class=\"\" href=\"\/about\/\">About<\/a><a class=\"\" href=\"\/contact\/\">Contact<\/a><a class=\"ati-mobile-cta\" href=\"\/contact\/\">Partner With Us<\/a><\/div>\n<\/details>\n<p>      <a class=\"ati-mobile-menu-button\" href=\"#ati-mobile-nav-post\" aria-label=\"Open navigation menu\">&#9776;<\/a><\/p>\n<nav id=\"ati-mobile-nav-post\" class=\"ati-mobile-nav-panel\"><a class=\"\" href=\"\/\">Home<\/a><a class=\"\" href=\"\/solutions\/\">Solutions<\/a><a class=\"\" href=\"\/cp-academy\/\">CP Academy<\/a><a class=\"\" href=\"\/ai-literacy\/\">AI Literacy<\/a><a class=\"active\" href=\"\/resources\/\">Resources<\/a><a class=\"\" href=\"\/about\/\">About<\/a><a class=\"\" href=\"\/contact\/\">Contact<\/a><a class=\"ati-mobile-cta\" href=\"\/contact\/\">Partner With Us<\/a><a class=\"ati-mobile-close\" href=\"#\">Close<\/a><\/nav>\n<nav class=\"ati-nav\"><a class=\"\" href=\"\/\">Home<\/a><a class=\"\" href=\"\/solutions\/\">Solutions<\/a><a class=\"\" href=\"\/cp-academy\/\">CP Academy<\/a><a class=\"\" href=\"\/ai-literacy\/\">AI Literacy<\/a><a class=\"active\" href=\"\/resources\/\">Resources<\/a><a class=\"\" href=\"\/about\/\">About<\/a><a class=\"\" href=\"\/contact\/\">Contact<\/a><\/nav>\n<p>      <a class=\"ati-header-cta\" href=\"\/contact\/\">Partner With Us<\/a><br \/>\n    <\/header>\n<p>    <main><\/p>\n<section class=\"ati-hero\">\n<div>\n<p class=\"ati-label\">CP Weekly Challenge<\/p>\n<h1 aria-label=\"CCC 2023 J5 - Word Hunt Solution &amp; Analysis\"><span class=\"ati-hero-title-line\"><span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:0\">C<\/span><span class=\"ati-letter\" style=\"--i:1\">C<\/span><span class=\"ati-letter\" style=\"--i:2\">C<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:4\">2<\/span><span class=\"ati-letter\" style=\"--i:5\">0<\/span><span class=\"ati-letter\" style=\"--i:6\">2<\/span><span class=\"ati-letter\" style=\"--i:7\">3<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:9\">J<\/span><span class=\"ati-letter\" style=\"--i:10\">5<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:12\">&#8211;<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:14\">W<\/span><span class=\"ati-letter\" style=\"--i:15\">o<\/span><span class=\"ati-letter\" style=\"--i:16\">r<\/span><span class=\"ati-letter\" style=\"--i:17\">d<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:19\">H<\/span><span class=\"ati-letter\" style=\"--i:20\">u<\/span><span class=\"ati-letter\" style=\"--i:21\">n<\/span><span class=\"ati-letter\" style=\"--i:22\">t<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:24\">S<\/span><span class=\"ati-letter\" style=\"--i:25\">o<\/span><span class=\"ati-letter\" style=\"--i:26\">l<\/span><span class=\"ati-letter\" style=\"--i:27\">u<\/span><span class=\"ati-letter\" style=\"--i:28\">t<\/span><span class=\"ati-letter\" style=\"--i:29\">i<\/span><span class=\"ati-letter\" style=\"--i:30\">o<\/span><span class=\"ati-letter\" style=\"--i:31\">n<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:33\">&amp;<\/span><\/span> <span class=\"ati-word\"><span class=\"ati-letter\" style=\"--i:35\">A<\/span><span class=\"ati-letter\" style=\"--i:36\">n<\/span><span class=\"ati-letter\" style=\"--i:37\">a<\/span><span class=\"ati-letter\" style=\"--i:38\">l<\/span><span class=\"ati-letter\" style=\"--i:39\">y<\/span><span class=\"ati-letter\" style=\"--i:40\">s<\/span><span class=\"ati-letter\" style=\"--i:41\">i<\/span><span class=\"ati-letter\" style=\"--i:42\">s<\/span><\/span><\/span><\/h1>\n<p>Use grid search, direction vectors, and one right-angle bend to count every hidden occurrence of a word.<\/p>\n<div class=\"ati-article-meta\"><span>By Berny<\/span><span>July 4, 2026<\/span><\/div>\n<\/div>\n<aside class=\"ati-side\"><strong>Grid<br \/>Search<br \/>One Bend<\/strong><\/p>\n<p>CCC practice with structured explanation, implementation notes, and review questions.<\/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\">Share this article<\/p>\n<p class=\"ati-share-note\">Copy the link, open your phone share sheet, scan the QR code for WeChat, or send by email.<\/p>\n<\/p><\/div>\n<div class=\"ati-share-actions\">\n    <button type=\"button\" data-share-native>Share<\/button><br \/>\n    <button type=\"button\" data-share-copy-link>Copy Link<\/button><br \/>\n    <button type=\"button\" data-share-wechat>WeChat QR<\/button><br \/>\n    <a data-share-email>Email<\/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\"><\/p>\n<p>Scan with WeChat, then share the article link.<\/p>\n<\/p><\/div>\n<p class=\"ati-share-status\" data-share-status aria-live=\"polite\">\n<\/div>\n<div class=\"ati-article-content\">\n<article class=\"ati-post-article\">\n<h2>Summary<\/h2>\n<p>This problem asks us to count how many times a given word appears in a grid of uppercase letters.<\/p>\n<p>The word can appear in two ways:<\/p>\n<ul>\n<li>Straight line<\/li>\n<\/ul>\n<p>The letters appear in sequence in one horizontal, vertical, or diagonal direction.<\/p>\n<ul>\n<li>Right-angle bend<\/li>\n<\/ul>\n<p>The word is split into two straight segments. The first segment follows one direction, then the second segment continues in a perpendicular direction, forming a right angle at the turning letter.<\/p>\n<p>The key idea is to check every starting cell, every direction, and every possible turning point.<\/p>\n<p>This is a grid search problem with direction vectors and careful boundary checking.<\/p>\n<h2>Understanding the Problem<\/h2>\n<p>We are given:<\/p>\n<ul>\n<li>a word <code>W<\/code><\/li>\n<li>the number of rows <code>R<\/code><\/li>\n<li>the number of columns <code>C<\/code><\/li>\n<li>an <code>R x C<\/code> grid of uppercase letters<\/li>\n<\/ul>\n<p>The output is the total number of hidden occurrences of <code>W<\/code>.<\/p>\n<p>The word must be read in order. A valid occurrence may be:<\/p>\n<ol>\n<li>entirely straight<\/li>\n<li>partly straight, then turned 90 degrees once<\/li>\n<\/ol>\n<p>For example, if the word is <code>HELLO<\/code>, a bent occurrence might split at different positions:<\/p>\n<pre><code class=\"language-text\">H | ELLO\nHE | LLO\nHEL | LO\nHELL | O<\/code><\/pre>\n<p>However, in this problem, both line segments should contain at least one movement. That means the turning point cannot be the starting letter or the final letter.<\/p>\n<p>A single grid letter can be used in more than one occurrence. We are counting all valid occurrences, not marking letters as unavailable.<\/p>\n<h2>Input Specification<\/h2>\n<p>The input contains:<\/p>\n<ul>\n<li>line 1: the word <code>W<\/code><\/li>\n<li>line 2: integer <code>R<\/code>, the number of rows<\/li>\n<li>line 3: integer <code>C<\/code>, the number of columns<\/li>\n<li>next <code>R<\/code> lines: <code>C<\/code> uppercase letters separated by spaces<\/li>\n<\/ul>\n<p>The word has distinct uppercase letters and length at least 2.<\/p>\n<h2>Core DSA Concepts Involved<\/h2>\n<ul>\n<li>Grid Traversal<\/li>\n<\/ul>\n<p>Try each cell as a possible starting point.<\/p>\n<ul>\n<li>Direction Vectors<\/li>\n<\/ul>\n<p>Represent movement using <code>(dr, dc)<\/code> pairs.<\/p>\n<ul>\n<li>Brute Force with Small Branching<\/li>\n<\/ul>\n<p>For each start, try all directions and possible turn positions.<\/p>\n<ul>\n<li>Geometry in Code<\/li>\n<\/ul>\n<p>A right-angle turn can be represented by moving to one of two perpendicular directions.<\/p>\n<ul>\n<li>Boundary Checking<\/li>\n<\/ul>\n<p>Every cell visited by a candidate word must stay inside the grid.<\/p>\n<h2>Direction Model<\/h2>\n<p>We use 8 directions in circular order:<\/p>\n<pre><code class=\"language-text\">E, NE, N, NW, W, SW, S, SE<\/code><\/pre>\n<p>In Python:<\/p>\n<pre><code class=\"language-python\">dirs = [\n    (0, 1),    # E\n    (-1, 1),   # NE\n    (-1, 0),   # N\n    (-1, -1),  # NW\n    (0, -1),   # W\n    (1, -1),   # SW\n    (1, 0),    # S\n    (1, 1)     # SE\n]<\/code><\/pre>\n<p>This ordering makes perpendicular directions easy.<\/p>\n<p>If the first direction has index <code>d<\/code>, the two perpendicular directions are:<\/p>\n<pre><code class=\"language-text\">(d + 2) % 8\n(d - 2) % 8<\/code><\/pre>\n<p>For example:<\/p>\n<ul>\n<li>east can turn north or south<\/li>\n<li>northeast can turn northwest or southeast<\/li>\n<li>north can turn west or east<\/li>\n<\/ul>\n<h2>Approach<\/h2>\n<p>We count two kinds of matches.<\/p>\n<h3>1. Straight-Line Search<\/h3>\n<p>For each starting cell:<\/p>\n<ul>\n<li>try all 8 directions<\/li>\n<li>check whether every character of <code>W<\/code> matches while walking in that direction<\/li>\n<li>if the full word matches, add 1 to the answer<\/li>\n<\/ul>\n<h3>2. Right-Angle Search<\/h3>\n<p>For each starting cell:<\/p>\n<ul>\n<li>choose a first direction <code>d1<\/code><\/li>\n<li>choose one of the two perpendicular directions <code>d2<\/code><\/li>\n<li>choose a turning point <code>turn_at<\/code><\/li>\n<li>check whether:<\/li>\n<\/ul>\n<pre><code class=\"language-text\">W[0] ... W[turn_at]<\/code><\/pre>\n<p>matches along <code>d1<\/code>, and:<\/p>\n<pre><code class=\"language-text\">W[turn_at + 1] ... W[L - 1]<\/code><\/pre>\n<p>matches along <code>d2<\/code>, starting from the turning letter.<\/p>\n<p>The turning point is included in the first segment. The second segment starts one step away from the turning point.<\/p>\n<p>For a word of length <code>L<\/code>, the valid turning points are:<\/p>\n<pre><code class=\"language-text\">1, 2, ..., L - 2<\/code><\/pre>\n<p>This ensures that both segments have at least one movement.<\/p>\n<h2>Helper Functions<\/h2>\n<p>We use three helper functions:<\/p>\n<ul>\n<li><code>inside(r, c)<\/code><\/li>\n<\/ul>\n<p>Checks whether <code>(r, c)<\/code> is inside the grid.<\/p>\n<ul>\n<li><code>match_straight(r, c, dr, dc)<\/code><\/li>\n<\/ul>\n<p>Checks whether the full word appears from <code>(r, c)<\/code> in one direction.<\/p>\n<ul>\n<li><code>match_bend(r, c, d1, d2, turn_at)<\/code><\/li>\n<\/ul>\n<p>Checks whether the word appears using one first direction, one perpendicular second direction, and one chosen turning point.<\/p>\n<p>This keeps the main loop easy to read.<\/p>\n<h2>Python Solution<\/h2>\n<pre><code class=\"language-python\"># CCC 2023 J5 - CCC Word Hunt\n# Straight-line and one-bend grid search\n\nW = input().strip()\nL = len(W)\n\nR = int(input())\nC = int(input())\n\ngrid = [input().split() for _ in range(R)]\n\n# 8 directions in circular order so perpendicular turns are +\/- 2\ndirs = [\n    (0, 1),    # E\n    (-1, 1),   # NE\n    (-1, 0),   # N\n    (-1, -1),  # NW\n    (0, -1),   # W\n    (1, -1),   # SW\n    (1, 0),    # S\n    (1, 1)     # SE\n]\n\n\ndef inside(r, c):\n    return 0 &lt;= r &lt; R and 0 &lt;= c &lt; C\n\n\ndef match_straight(r, c, dr, dc):\n    # Match W[0..L-1] starting at (r, c), stepping by (dr, dc)\n    for k in range(L):\n        nr = r + dr * k\n        nc = c + dc * k\n\n        if not inside(nr, nc) or grid[nr][nc] != W[k]:\n            return False\n\n    return True\n\n\ndef match_bend(r, c, d1, d2, turn_at):\n    &quot;&quot;&quot;\n    First segment:\n      W[0..turn_at] along direction d1, including the turning letter.\n\n    Second segment:\n      W[turn_at+1..L-1] along direction d2, starting one step after\n      the turning letter.\n    &quot;&quot;&quot;\n    dr1, dc1 = dirs[d1]\n    dr2, dc2 = dirs[d2]\n\n    # Check the first segment, including the turning point.\n    for k in range(turn_at + 1):\n        nr = r + dr1 * k\n        nc = c + dc1 * k\n\n        if not inside(nr, nc) or grid[nr][nc] != W[k]:\n            return False\n\n    # Turning point location.\n    pr = r + dr1 * turn_at\n    pc = c + dc1 * turn_at\n\n    # Check the second segment.\n    for k in range(turn_at + 1, L):\n        step = k - turn_at\n        nr = pr + dr2 * step\n        nc = pc + dc2 * step\n\n        if not inside(nr, nc) or grid[nr][nc] != W[k]:\n            return False\n\n    return True\n\n\ncount = 0\n\nfor r in range(R):\n    for c in range(C):\n        if grid[r][c] != W[0]:\n            continue\n\n        # 1. Straight-line matches\n        for d in range(8):\n            dr, dc = dirs[d]\n            if match_straight(r, c, dr, dc):\n                count += 1\n\n        # 2. One-bend matches\n        for d1 in range(8):\n            for d2 in ((d1 + 2) % 8, (d1 - 2) % 8):\n                for turn_at in range(1, L - 1):\n                    if match_bend(r, c, d1, d2, turn_at):\n                        count += 1\n\nprint(count)<\/code><\/pre>\n<h2>C++ Solution<\/h2>\n<pre><code class=\"language-cpp\">\/\/ CCC 2023 J5 - CCC Word Hunt\n\/\/ Straight-line and one-bend grid search\n\n#include &lt;iostream&gt;\n#include &lt;vector&gt;\n#include &lt;string&gt;\nusing namespace std;\n\nint R, C;\nstring W;\nint L;\n\n\/\/ 8 directions in circular order so perpendicular turns are +\/- 2\nint dr[8] = {0, -1, -1, -1, 0, 1, 1, 1};\nint dc[8] = {1,  1,  0, -1, -1, -1, 0, 1};\n\nbool inside(int r, int c) {\n    return 0 &lt;= r &amp;&amp; r &lt; R &amp;&amp; 0 &lt;= c &amp;&amp; c &lt; C;\n}\n\nbool matchStraight(const vector&lt;vector&lt;char&gt;&gt;&amp; grid, int r, int c, int d) {\n    \/\/ Match W[0..L-1] starting at (r, c), stepping in direction d.\n    for (int k = 0; k &lt; L; k++) {\n        int nr = r + dr[d] * k;\n        int nc = c + dc[d] * k;\n\n        if (!inside(nr, nc) || grid[nr][nc] != W[k]) {\n            return false;\n        }\n    }\n\n    return true;\n}\n\nbool matchBend(const vector&lt;vector&lt;char&gt;&gt;&amp; grid, int r, int c,\n               int d1, int d2, int turnAt) {\n    \/\/ Check first segment, including the turning point.\n    for (int k = 0; k &lt;= turnAt; k++) {\n        int nr = r + dr[d1] * k;\n        int nc = c + dc[d1] * k;\n\n        if (!inside(nr, nc) || grid[nr][nc] != W[k]) {\n            return false;\n        }\n    }\n\n    \/\/ Turning point location.\n    int pr = r + dr[d1] * turnAt;\n    int pc = c + dc[d1] * turnAt;\n\n    \/\/ Check second segment, starting one step after the turning point.\n    for (int k = turnAt + 1; k &lt; L; k++) {\n        int step = k - turnAt;\n        int nr = pr + dr[d2] * step;\n        int nc = pc + dc[d2] * step;\n\n        if (!inside(nr, nc) || grid[nr][nc] != W[k]) {\n            return false;\n        }\n    }\n\n    return true;\n}\n\nint main() {\n    cin &gt;&gt; W;\n    L = (int)W.size();\n\n    cin &gt;&gt; R;\n    cin &gt;&gt; C;\n\n    vector&lt;vector&lt;char&gt;&gt; grid(R, vector&lt;char&gt;(C));\n\n    for (int r = 0; r &lt; R; r++) {\n        for (int c = 0; c &lt; C; c++) {\n            cin &gt;&gt; grid[r][c];\n        }\n    }\n\n    int count = 0;\n\n    for (int r = 0; r &lt; R; r++) {\n        for (int c = 0; c &lt; C; c++) {\n            if (grid[r][c] != W[0]) {\n                continue;\n            }\n\n            \/\/ 1. Straight-line matches\n            for (int d = 0; d &lt; 8; d++) {\n                if (matchStraight(grid, r, c, d)) {\n                    count++;\n                }\n            }\n\n            \/\/ 2. One-bend matches\n            for (int d1 = 0; d1 &lt; 8; d1++) {\n                int d2a = (d1 + 2) % 8;\n                int d2b = (d1 + 6) % 8; \/\/ same as (d1 - 2 + 8) % 8\n\n                for (int turnAt = 1; turnAt &lt;= L - 2; turnAt++) {\n                    if (matchBend(grid, r, c, d1, d2a, turnAt)) {\n                        count++;\n                    }\n\n                    if (matchBend(grid, r, c, d1, d2b, turnAt)) {\n                        count++;\n                    }\n                }\n            }\n        }\n    }\n\n    cout &lt;&lt; count &lt;&lt; &#x27;\\n&#x27;;\n\n    return 0;\n}<\/code><\/pre>\n<h2>Complexity Analysis<\/h2>\n<p>Let:<\/p>\n<pre><code class=\"language-text\">L = length of the word<\/code><\/pre>\n<p>For each grid cell, we try:<\/p>\n<ul>\n<li>8 straight directions<\/li>\n<li>8 first directions for bent words<\/li>\n<li>2 perpendicular second directions<\/li>\n<li>up to <code>L - 2<\/code> possible turning points<\/li>\n<\/ul>\n<p>Each check may scan up to <code>L<\/code> letters.<\/p>\n<p>So a clear upper bound is:<\/p>\n<pre><code class=\"language-text\">O(R * C * 8 * L^2)<\/code><\/pre>\n<p>Since the word length is small in this problem, this approach is efficient and easy to reason about.<\/p>\n<p>The extra space used is:<\/p>\n<pre><code class=\"language-text\">O(1)<\/code><\/pre>\n<p>apart from the input grid.<\/p>\n<h2>Common Mistakes<\/h2>\n<ul>\n<li>Only checking straight lines<\/li>\n<\/ul>\n<p>The full problem allows one right-angle bend.<\/p>\n<ul>\n<li>Turning in non-perpendicular directions<\/li>\n<\/ul>\n<p>A valid bend must form a right angle. From direction <code>d<\/code>, only <code>(d + 2) % 8<\/code> and <code>(d - 2) % 8<\/code> are allowed.<\/p>\n<ul>\n<li>Letting the turn happen at the first or last letter<\/li>\n<\/ul>\n<p>That can create duplicate counting or an empty second segment. Use <code>turn_at<\/code> from <code>1<\/code> to <code>L - 2<\/code>.<\/p>\n<ul>\n<li>Forgetting diagonal directions<\/li>\n<\/ul>\n<p>The word can appear horizontally, vertically, or diagonally.<\/p>\n<ul>\n<li>Mixing up the pivot letter<\/li>\n<\/ul>\n<p>The turning letter belongs to the first segment. The second segment starts one step after the pivot.<\/p>\n<ul>\n<li>Using a visited set<\/li>\n<\/ul>\n<p>This is not a pathfinding problem where cells become unavailable. A grid letter may be used in more than one occurrence.<\/p>\n<h2>Learning Outcomes<\/h2>\n<p>This problem is good practice for:<\/p>\n<ul>\n<li>scanning a grid systematically<\/li>\n<li>representing directions with arrays<\/li>\n<li>converting geometry rules into index movement<\/li>\n<li>writing helper functions for cleaner brute force<\/li>\n<li>avoiding double-counting in search problems<\/li>\n<\/ul>\n<p>The most important implementation idea is the turning point:<\/p>\n<pre><code class=\"language-text\">turn_at = the index of the letter where the path changes direction<\/code><\/pre>\n<p>Once we choose the starting cell, first direction, second direction, and turning point, the whole path is fixed. Then we only need to check whether the letters match.<\/p>\n<h2>Practice Questions<\/h2>\n<ol>\n<li>Why do we need 8 directions instead of 4?<\/li>\n<li>Why are perpendicular directions two positions away in the circular direction list?<\/li>\n<li>Why should <code>turn_at<\/code> start at 1?<\/li>\n<li>Why should <code>turn_at<\/code> stop at <code>L - 2<\/code>?<\/li>\n<li>What would change if the word were allowed to turn more than once?<\/li>\n<\/ol>\n<\/article>\n<\/div>\n<section class=\"ati-feedback-cta\" data-ati-feedback>\n<div class=\"ati-feedback-copy\">\n<p class=\"ati-feedback-title\">Questions or feedback?<\/p>\n<p class=\"ati-feedback-note\">If you have questions about this article or suggestions for improvement, send us a private message.<\/p>\n<\/p><\/div>\n<p>  <a class=\"ati-feedback-button\" href=\"\/contact\/\" data-ati-feedback-link>Send Feedback<\/a><br \/>\n<\/section>\n<div class=\"ati-article-back\">\n  <a href=\"\/cp-weekly-challenge\/\">\u2190 Back to CP Weekly Challenge<\/a>\n<\/div>\n<\/article>\n<\/section>\n<p>    <\/main><\/p>\n<footer class=\"ati-footer\">\n      <a class=\"ati-brand ati-logo\" href=\"\/\" aria-label=\"Accel Thinking home\"><img data-recalc-dims=\"1\" decoding=\"async\" loading=\"lazy\" src=\"https:\/\/i0.wp.com\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png?ssl=1\" alt=\"Accel Thinking\"><\/a><\/p>\n<nav><a href=\"\/\">Home<\/a><a href=\"\/solutions\/\">Solutions<\/a><a href=\"\/cp-academy\/\">CP Academy<\/a><a href=\"\/ai-literacy\/\">AI Literacy<\/a><a href=\"\/resources\/\">Resources<\/a><a href=\"\/it-consulting\/\">IT Consulting<\/a><a href=\"\/about\/\">About<\/a><a href=\"\/contact\/\">Contact<\/a><\/nav>\n<address><a href=\"mailto:info@accelthinking.com\">info@accelthinking.com<\/a><span>Oakville, Ontario, Canada<\/span><\/address>\n<\/footer><\/div>\n<p><script>\n(function(){\n  if (!location.pathname.toLowerCase().includes('\/zh_cn')) return;\n  const map = {\"Home\": \"\u9996\u9875\", \"Solutions\": \"\u89e3\u51b3\u65b9\u6848\", \"CP Academy\": \"CP \u5b66\u9662\", \"Python Assessment\": \"Python \u7f16\u7a0b\u80fd\u529b\u8bc4\u4f30\", \"IT Consulting\": \"IT \u54a8\u8be2\", \"About\": \"\u5173\u4e8e\u6211\u4eec\", \"Contact\": \"\u8054\u7cfb\u6211\u4eec\", \"Accel Thinking\": \"\u52a0\u901f\u5ea6\u601d\u7ef4\", \"Partner With Us\": \"\u6210\u4e3a\u5408\u4f5c\u4f19\u4f34\", \"Close\": \"\u5173\u95ed\", \"Competitive Programming Education & Technology Consulting\": \"\u7ade\u8d5b\u7f16\u7a0b\u6559\u80b2\u4e0e\u6280\u672f\u54a8\u8be2\", \"Technology Education Solutions for Future Innovators\": \"\u9762\u5411\u672a\u6765\u521b\u65b0\u8005\u7684\u79d1\u6280\u6559\u80b2\u89e3\u51b3\u65b9\u6848\", \"for Future Innovators\": \"\u9762\u5411\u672a\u6765\u521b\u65b0\u8005\", \"Curriculum. Instructors. Delivery.\": \"\u8bfe\u7a0b\u4f53\u7cfb\u3002\u6559\u5e08\u56e2\u961f\u3002\u4ea4\u4ed8\u652f\u6301\u3002\", \"Helping educational organizations deliver engaging competitive programming programs and helping businesses make informed technology decisions.\": \"\u5e2e\u52a9\u6559\u80b2\u673a\u6784\u4ea4\u4ed8\u6709\u5438\u5f15\u529b\u7684\u7ade\u8d5b\u7f16\u7a0b\u8bfe\u7a0b\uff0c\u5e76\u5e2e\u52a9\u4f01\u4e1a\u505a\u51fa\u66f4\u660e\u667a\u7684\u6280\u672f\u51b3\u7b56\u3002\", \"Explore Solutions\": \"\u63a2\u7d22\u89e3\u51b3\u65b9\u6848\", \"Explore CP Academy\": \"\u63a2\u7d22 CP \u5b66\u9662\", \"Complete programs with curriculum, instructors, materials, assessments, and delivery support.\": \"\u5b8c\u6574\u8bfe\u7a0b\u65b9\u6848\uff0c\u5305\u542b\u8bfe\u7a0b\u4f53\u7cfb\u3001\u6559\u5e08\u3001\u6750\u6599\u3001\u8bc4\u4f30\u4e0e\u4ea4\u4ed8\u652f\u6301\u3002\", \"Structured competitive programming pathways and CCC preparation for students aged 12-16.\": \"\u9762\u5411 12-16 \u5c81\u5b66\u751f\u7684\u7ed3\u6784\u5316\u7ade\u8d5b\u7f16\u7a0b\u8def\u5f84\u4e0e CCC \u5907\u8003\u3002\", \".NET, React, architecture review, and AI adoption consulting for modern software teams.\": \"\u4e3a\u73b0\u4ee3\u8f6f\u4ef6\u56e2\u961f\u63d0\u4f9b .NET\u3001React\u3001\u67b6\u6784\u8bc4\u5ba1\u4e0e AI \u5e94\u7528\u54a8\u8be2\u3002\", \"Learn More\": \"\u4e86\u89e3\u66f4\u591a\", \"Why Accel Thinking\": \"\u4e3a\u4ec0\u4e48\u9009\u62e9\u52a0\u901f\u5ea6\u601d\u7ef4\", \"Beyond Coding Lessons\": \"\u4e0d\u53ea\u662f\u7f16\u7a0b\u8bfe\", \"Problem Solving Skills\": \"\u95ee\u9898\u89e3\u51b3\u80fd\u529b\", \"Algorithmic Thinking\": \"\u7b97\u6cd5\u601d\u7ef4\", \"Confidence & Communication\": \"\u81ea\u4fe1\u4e0e\u6c9f\u901a\", \"Engineering Mindset\": \"\u5de5\u7a0b\u601d\u7ef4\", \"CP Academy Pathway\": \"CP \u5b66\u9662\u5b66\u4e60\u8def\u5f84\", \"From foundation programming to CCC Senior readiness.\": \"\u4ece\u7f16\u7a0b\u57fa\u7840\u5230 CCC\u9ad8\u7ea7\u5907\u8003\u3002\", \"View Learning Pathway\": \"\u67e5\u770b\u5b66\u4e60\u8def\u5f84\", \"Latest CP Weekly Challenge\": \"\u6700\u65b0 CP \u6bcf\u5468\u6311\u6218\", \"Weekly articles built for search, practice, and long-term authority.\": \"\u9762\u5411\u641c\u7d22\u3001\u7ec3\u4e60\u548c\u957f\u671f\u5185\u5bb9\u79ef\u7d2f\u7684\u6bcf\u5468\u6587\u7ae0\u3002\", \"CCC 2024 J3 - Solution & Analysis\": \"CCC 2024 J3 - \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2024 J3 \u2013 Solution & Analysis\": \"CCC 2024 J3 - \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2023 S1 - Solution & Analysis\": \"CCC 2023 S1 - \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2023 S1 \u2013 Solution & Analysis\": \"CCC 2023 S1 - \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2022 J5 - Solution & Analysis\": \"CCC 2022 J5 - \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2022 J5 \u2013 Solution & Analysis\": \"CCC 2022 J5 - \u89e3\u9898\u4e0e\u5206\u6790\", \"Topics: Simulation | Difficulty: 3\/5\": \"\u4e3b\u9898\uff1a\u6a21\u62df | \u96be\u5ea6\uff1a3\/5\", \"Topics: Ad Hoc | Difficulty: 3\/5\": \"\u4e3b\u9898\uff1a\u4e34\u573a\u601d\u7ef4 | \u96be\u5ea6\uff1a3\/5\", \"Topics: Graph | Difficulty: 4\/5\": \"\u4e3b\u9898\uff1a\u56fe\u8bba | \u96be\u5ea6\uff1a4\/5\", \"View All Challenges\": \"\u67e5\u770b\u6240\u6709\u6311\u6218\", \"Programs that learning centers, schools, and community organizations can launch with confidence.\": \"\u8ba9\u5b66\u4e60\u4e2d\u5fc3\u3001\u5b66\u6821\u548c\u793e\u533a\u7ec4\u7ec7\u80fd\u591f\u653e\u5fc3\u542f\u52a8\u7684\u8bfe\u7a0b\u9879\u76ee\u3002\", \"Delivery Models\": \"\u6388\u8bfe\u6a21\u5f0f\", \"Online, in-person, and hybrid programs designed for flexible operations.\": \"\u652f\u6301\u7ebf\u4e0a\u3001\u7ebf\u4e0b\u548c\u6df7\u5408\u6388\u8bfe\uff0c\u9002\u914d\u7075\u6d3b\u8fd0\u8425\u3002\", \"Partner Audience\": \"\u5408\u4f5c\u5bf9\u8c61\", \"Learning centers, private academies, schools, and community organizations.\": \"\u5b66\u4e60\u4e2d\u5fc3\u3001\u79c1\u7acb\u57f9\u8bad\u673a\u6784\u3001\u5b66\u6821\u548c\u793e\u533a\u7ec4\u7ec7\u3002\", \"Practical technology consulting for modern software teams.\": \"\u9762\u5411\u73b0\u4ee3\u8f6f\u4ef6\u56e2\u961f\u7684\u5b9e\u7528\u6280\u672f\u54a8\u8be2\u3002\", \"Independent guidance for teams that need better architecture decisions, clearer delivery paths, or a grounded AI adoption strategy.\": \"\u4e3a\u9700\u8981\u66f4\u597d\u67b6\u6784\u51b3\u7b56\u3001\u66f4\u6e05\u6670\u4ea4\u4ed8\u8def\u5f84\u6216\u52a1\u5b9e AI \u7b56\u7565\u7684\u56e2\u961f\u63d0\u4f9b\u72ec\u7acb\u6307\u5bfc\u3002\", \"Architecture\": \"\u67b6\u6784\", \"AI Adoption\": \"AI \u5e94\u7528\", \"AI evaluation, integration, automation, and business strategy.\": \"AI \u8bc4\u4f30\u3001\u96c6\u6210\u3001\u81ea\u52a8\u5316\u4e0e\u4e1a\u52a1\u7b56\u7565\u3002\", \"About Accel Thinking\": \"\u5173\u4e8e\u52a0\u901f\u5ea6\u601d\u7ef4\", \"Software Architect\": \"\u8f6f\u4ef6\u67b6\u6784\u5e08\", \"Technology Educator\": \"\u79d1\u6280\u6559\u80b2\u8005\", \"Curriculum Designer\": \"\u8bfe\u7a0b\u8bbe\u8ba1\u8005\", \"20+ Years Experience\": \"20+ \u5e74\u7ecf\u9a8c\", \"We work with learning centers, schools, and organizations to deliver high-quality technology programs.\": \"\u6211\u4eec\u4e0e\u5b66\u4e60\u4e2d\u5fc3\u3001\u5b66\u6821\u548c\u7ec4\u7ec7\u5408\u4f5c\uff0c\u4ea4\u4ed8\u9ad8\u8d28\u91cf\u79d1\u6280\u8bfe\u7a0b\u3002\", \"Let's Work Together\": \"\u4e00\u8d77\u5408\u4f5c\", \"Let\u2019s Work Together\": \"\u4e00\u8d77\u5408\u4f5c\", \"Years of Experience\": \"\u5e74\u7ecf\u9a8c\", \"Students Taught\": \"\u6559\u6388\u5b66\u751f\", \"Partner Organizations\": \"\u5408\u4f5c\u673a\u6784\", \"Weekly Challenges\": \"\u6bcf\u5468\u6311\u6218\", \"Educational Partnerships\": \"\u6559\u80b2\u5408\u4f5c\", \"Technology Education Solutions\": \"\u79d1\u6280\u6559\u80b2\u89e3\u51b3\u65b9\u6848\", \"Complete competitive programming and computer science programs for learning centers, schools, academies, and community organizations.\": \"\u4e3a\u5b66\u4e60\u4e2d\u5fc3\u3001\u5b66\u6821\u3001\u57f9\u8bad\u673a\u6784\u548c\u793e\u533a\u7ec4\u7ec7\u63d0\u4f9b\u5b8c\u6574\u7684\u7ade\u8d5b\u7f16\u7a0b\u4e0e\u8ba1\u7b97\u673a\u79d1\u5b66\u8bfe\u7a0b\u65b9\u6848\u3002\", \"Start a Partnership Inquiry\": \"\u53d1\u8d77\u5408\u4f5c\u54a8\u8be2\", \"Curriculum.\": \"\u8bfe\u7a0b\u4f53\u7cfb\u3002\", \"Instructors.\": \"\u6559\u5e08\u56e2\u961f\u3002\", \"Delivery.\": \"\u4ea4\u4ed8\u652f\u6301\u3002\", \"A partner-ready operating model for launching technology programs.\": \"\u9762\u5411\u5408\u4f5c\u4f19\u4f34\u7684\u79d1\u6280\u8bfe\u7a0b\u843d\u5730\u8fd0\u8425\u6a21\u5f0f\u3002\", \"Included Services\": \"\u670d\u52a1\u5185\u5bb9\", \"Curriculum, qualified instructors, teaching materials, assessments, and delivery support.\": \"\u8bfe\u7a0b\u63d0\u4f9b\uff0c\u8ba4\u8bc1\u6559\u5e08\uff0c\u6559\u6848\uff0c\u6559\u5b66\u8bc4\u4f30\uff0c\u4ea4\u4ed8\u652f\u6301\u3002\", \"Everything needed to deliver a structured, high-quality program.\": \"\u4ea4\u4ed8\u7ed3\u6784\u5316\u3001\u9ad8\u8d28\u91cf\u8bfe\u7a0b\u6240\u9700\u7684\u4e00\u5207\u652f\u6301\u3002\", \"Curriculum\": \"\u8bfe\u7a0b\u4f53\u7cfb\", \"Structured learning plans for Python, competitive programming, and CCC preparation.\": \"\u9762\u5411 Python \u548c C++\u3001\u7ade\u8d5b\u7f16\u7a0b\u548c CCC \u5907\u8003\u7684\u7ed3\u6784\u5316\u5b66\u4e60\u8ba1\u5212\u3002\", \"Structured learning plans for Python and C++, competitive programming, and CCC preparation.\": \"\u9762\u5411 Python \u548c C++\u3001\u7ade\u8d5b\u7f16\u7a0b\u548c CCC \u5907\u8003\u7684\u7ed3\u6784\u5316\u5b66\u4e60\u8ba1\u5212\u3002\", \"Qualified Instructors\": \"\u5408\u683c\u6559\u5e08\", \"Technology educators who understand programming, problem solving, and student confidence.\": \"\u7406\u89e3\u7f16\u7a0b\u3001\u95ee\u9898\u89e3\u51b3\u548c\u5b66\u751f\u4fe1\u5fc3\u57f9\u517b\u7684\u79d1\u6280\u6559\u80b2\u8005\u3002\", \"Teaching Materials\": \"\u6559\u5b66\u6750\u6599\", \"Lesson assets, examples, practice problems, and class-ready delivery support.\": \"\u8bfe\u7a0b\u8d44\u6e90\u3001\u793a\u4f8b\u3001\u7ec3\u4e60\u9898\u4ee5\u53ca\u53ef\u76f4\u63a5\u7528\u4e8e\u8bfe\u5802\u7684\u6559\u5b66\u652f\u6301\u3002\", \"Assessments\": \"\u5b66\u4e60\u8bc4\u4f30\", \"Milestone checks that track understanding, skills, and next-level readiness.\": \"\u901a\u8fc7\u9636\u6bb5\u6027\u68c0\u67e5\u8ddf\u8e2a\u7406\u89e3\u7a0b\u5ea6\u3001\u6280\u80fd\u6210\u957f\u548c\u8fdb\u9636\u51c6\u5907\u5ea6\u3002\", \"Delivery Support\": \"\u4ea4\u4ed8\u652f\u6301\", \"Online, in-person, and hybrid delivery models for different partner operations.\": \"\u652f\u6301\u7ebf\u4e0a\u3001\u7ebf\u4e0b\u548c\u6df7\u5408\u6388\u8bfe\uff0c\u9002\u914d\u4e0d\u540c\u5408\u4f5c\u673a\u6784\u7684\u8fd0\u8425\u65b9\u5f0f\u3002\", \"Program Areas\": \"\u8bfe\u7a0b\u65b9\u5411\", \"Python programming, competitive programming, and CCC preparation.\": \"Python \u548c C++ \u7f16\u7a0b\uff0c\u7ade\u8d5b\u7f16\u7a0b\uff0cCCC\u5907\u8d5b\u3002\", \"Python and C++ programming, competitive programming, and CCC preparation.\": \"Python \u548c C++ \u7f16\u7a0b\uff0c\u7ade\u8d5b\u7f16\u7a0b\uff0cCCC\u5907\u8d5b\u3002\", \"Built around durable skills.\": \"\u56f4\u7ed5\u957f\u671f\u53d7\u7528\u7684\u80fd\u529b\u6784\u5efa\u3002\", \"Programs help students build computational thinking, clear reasoning, and disciplined implementation habits.\": \"\u8bfe\u7a0b\u5e2e\u52a9\u5b66\u751f\u5efa\u7acb\u8ba1\u7b97\u601d\u7ef4\u3001\u6e05\u6670\u63a8\u7406\u80fd\u529b\u548c\u4e25\u8c28\u7684\u5b9e\u73b0\u4e60\u60ef\u3002\", \"Python Programming\": \"Python \u548c C++ \u7f16\u7a0b\", \"Python and C++ Programming\": \"Python \u548c C++ \u7f16\u7a0b\", \"Foundation syntax, control flow, data structures, and problem decomposition.\": \"\u57fa\u7840\u8bed\u6cd5\u3001\u6d41\u7a0b\u63a7\u5236\u3001\u6570\u636e\u7ed3\u6784\u4e0e\u95ee\u9898\u62c6\u89e3\u3002\", \"Competitive Programming\": \"\u7ade\u8d5b\u7f16\u7a0b\", \"Pattern recognition, algorithmic thinking, debugging, and time-aware practice.\": \"\u6a21\u5f0f\u8bc6\u522b\u3001\u7b97\u6cd5\u601d\u7ef4\u3001\u8c03\u8bd5\u80fd\u529b\u548c\u65f6\u95f4\u610f\u8bc6\u8bad\u7ec3\u3002\", \"CCC Preparation\": \"CCC \u5907\u8003\", \"Progressive preparation for CCC Junior and Senior question styles.\": \"\u9488\u5bf9 CCC \u521d\u7ea7\u548c\u9ad8\u7ea7\u9898\u578b\u7684\u5faa\u5e8f\u6e10\u8fdb\u5f0f\u8bad\u7ec3\u3002\", \"Students Aged 12-16\": \"\u9762\u5411 12-16 \u5c81\u5b66\u751f\", \"Competitive Programming & CCC Preparation\": \"\u7ade\u8d5b\u7f16\u7a0b\u4e0e CCC \u5907\u8003\", \"CP Academy helps students grow from foundation programming into confident, structured problem solvers.\": \"CP \u5b66\u9662\u5e2e\u52a9\u5b66\u751f\u4ece\u7f16\u7a0b\u57fa\u7840\u9010\u6b65\u6210\u957f\u4e3a\u81ea\u4fe1\u3001\u7ed3\u6784\u5316\u7684\u95ee\u9898\u89e3\u51b3\u8005\u3002\", \"Ask About CP Academy\": \"\u54a8\u8be2 CP \u5b66\u9662\", \"CP Weekly Challenge\": \"CP \u6bcf\u5468\u6311\u6218\", \"think -> solve -> implement -> review\": \"\u601d\u8003 -> \u6c42\u89e3 -> \u5b9e\u73b0 -> \u590d\u76d8\", \"View Challenges ->\": \"\u67e5\u770b\u6311\u6218 ->\", \"Learning Pathway\": \"\u5b66\u4e60\u8def\u5f84\", \"A clear progression from programming foundations to CCC Senior readiness.\": \"\u4ece\u7f16\u7a0b\u57fa\u7840\u5230 CCC\u9ad8\u7ea7\u5907\u8003\u7684\u6e05\u6670\u8fdb\u9636\u8def\u5f84\u3002\", \"Foundation Programming\": \"\u7f16\u7a0b\u57fa\u7840\", \"FoundationProgramming\": \"\u7f16\u7a0b\u57fa\u7840\", \"\u7f16\u7a0b\u57fa\u7840Programming\": \"\u7f16\u7a0b\u57fa\u7840\", \"Foundation\": \"\u7f16\u7a0b\u57fa\u7840\", \"Core Python and debugging habits.\": \"\u6838\u5fc3 Python \u548c C++ \u7f16\u7a0b\u80fd\u529b\u4e0e\u8c03\u8bd5\u4e60\u60ef\u3002\", \"Core Python and C++ programming and debugging habits.\": \"\u6838\u5fc3 Python \u548c C++ \u7f16\u7a0b\u80fd\u529b\u4e0e\u8c03\u8bd5\u4e60\u60ef\u3002\", \"CCC Junior J1-J2\": \"CCC Junior J1-J2\", \"CCC J30s\": \"CCC \u521d\u7ea730\u5206\", \"CCCJ30s\": \"CCC \u521d\u7ea730\u5206\", \"Careful reading, simulation, and short solutions.\": \"\u8ba4\u771f\u8bfb\u9898\u3001\u6a21\u62df\u8fc7\u7a0b\u548c\u77ed\u4ee3\u7801\u89e3\u6cd5\u3002\", \"CCC Junior J3-J4\": \"CCC Junior J3-J4\", \"CCC J60s\": \"CCC \u521d\u7ea760\u5206\", \"CCCJ60s\": \"CCC \u521d\u7ea760\u5206\", \"Multi-step logic and structured testing.\": \"\u591a\u6b65\u9aa4\u903b\u8f91\u4e0e\u7ed3\u6784\u5316\u6d4b\u8bd5\u3002\", \"CCC Junior J5\": \"CCC Junior J5\", \"CCC J75s\": \"CCC \u521d\u7ea7\u6ee1\u5206\", \"CCCJ75s\": \"CCC \u521d\u7ea7\u6ee1\u5206\", \"Search, recursion, and deeper reasoning.\": \"\u641c\u7d22\u3001\u9012\u5f52\u4e0e\u66f4\u6df1\u5165\u7684\u63a8\u7406\u3002\", \"CCC Senior S1-S4\": \"CCC Senior S1-S4\", \"CCC S45s\": \"CCC \u9ad8\u7ea745\u5206\", \"CCCS45s\": \"CCC \u9ad8\u7ea745\u5206\", \"Algorithmic patterns and complexity analysis.\": \"\u7b97\u6cd5\u6a21\u5f0f\u4e0e\u590d\u6742\u5ea6\u5206\u6790\u3002\", \"Benefits\": \"\u5b66\u4e60\u6536\u83b7\", \"Students build the mindset behind strong technical work.\": \"\u5b66\u751f\u5efa\u7acb\u624e\u5b9e\u6280\u672f\u80fd\u529b\u80cc\u540e\u7684\u601d\u7ef4\u65b9\u5f0f\u3002\", \"Problem Solving\": \"\u95ee\u9898\u89e3\u51b3\", \"Logical Thinking\": \"\u903b\u8f91\u601d\u7ef4\", \"Programming Skills\": \"\u7f16\u7a0b\u80fd\u529b\", \"University Readiness\": \"\u5927\u5b66\u51c6\u5907\", \"Confidence\": \"\u81ea\u4fe1\u8868\u8fbe\", \"Practice & Review\": \"\u7ec3\u4e60\u4e0e\u590d\u76d8\", \"Explore CP Weekly Challenge articles.\": \"\u67e5\u770b CP \u6bcf\u5468\u6311\u6218\u6587\u7ae0\u3002\", \"Weekly CCC-style problems with explanations, implementation notes, and learning outcomes.\": \"\u6bcf\u5468 CCC \u98ce\u683c\u9898\u76ee\uff0c\u5305\u542b\u8bb2\u89e3\u3001\u5b9e\u73b0\u8bf4\u660e\u548c\u5b66\u4e60\u76ee\u6807\u3002\", \"View Challenges\": \"\u67e5\u770b\u6311\u6218\", \"Placement Check\": \"\u80fd\u529b\u8bca\u65ad\", \"Assess your Python readiness before choosing a CP Academy pathway.\": \"\u5728\u9009\u62e9 CP \u5b66\u9662\u5b66\u4e60\u8def\u5f84\u524d\uff0c\u5148\u8bc4\u4f30\u81ea\u5df1\u7684 Python \u7f16\u7a0b\u57fa\u7840\u3002\", \"Start Python Assessment\": \"\u5f00\u59cb Python \u7f16\u7a0b\u80fd\u529b\u8bc4\u4f30\", \"Python readiness for CCC-style learning.\": \"\u9762\u5411 CCC \u5b66\u4e60\u7684 Python \u80fd\u529b\u8bca\u65ad\u3002\", \"Use a short multiple-choice quiz and a coding challenge to understand your current programming level before choosing a class path.\": \"\u901a\u8fc7\u7b80\u77ed\u9009\u62e9\u9898\u548c\u4ee3\u7801\u6311\u6218\uff0c\u4e86\u89e3\u5f53\u524d\u7f16\u7a0b\u6c34\u5e73\uff0c\u518d\u9009\u62e9\u5408\u9002\u7684\u8bfe\u7a0b\u8def\u5f84\u3002\", \"Start the Quiz\": \"\u5f00\u59cb\u6d4b\u8bc4\", \"Placement Assessment\": \"\u5206\u7ea7\u6d4b\u8bc4\", \"Section A\": \"A \u90e8\u5206\", \"Section B\": \"B \u90e8\u5206\", \"Section C\": \"C \u90e8\u5206\", \"Part 1: Multiple-Choice Check\": \"\u7b2c\u4e00\u90e8\u5206\uff1a\u9009\u62e9\u9898\u6d4b\u8bc4\", \"Answer these questions first. They focus on Python basics, control flow, data structures, and algorithmic thinking.\": \"\u5148\u5b8c\u6210\u8fd9\u4e9b\u9009\u62e9\u9898\uff0c\u5185\u5bb9\u8986\u76d6 Python \u57fa\u7840\u3001\u6d41\u7a0b\u63a7\u5236\u3001\u6570\u636e\u7ed3\u6784\u548c\u7b97\u6cd5\u601d\u7ef4\u3002\", \"Check My Score\": \"\u67e5\u770b\u6211\u7684\u5206\u6570\", \"Answer key: 1-B, 2-B, 3-C, 4-A, 5-B, 6-B, 7-B, 8-A.\": \"\u7b54\u6848\uff1a1-B\uff0c2-B\uff0c3-C\uff0c4-A\uff0c5-B\uff0c6-B\uff0c7-B\uff0c8-A\u3002\", \"0-3 correct: Foundation Programming\": \"\u7b54\u5bf9 0-3 \u9898\uff1a\u7f16\u7a0b\u57fa\u7840\", \"4-5 correct: CCC J30s\": \"\u7b54\u5bf9 4-5 \u9898\uff1aCCC \u521d\u7ea730\u5206\", \"6 correct: CCC J60s\": \"\u7b54\u5bf9 6 \u9898\uff1aCCC \u521d\u7ea760\u5206\", \"7 correct: CCC J75s\": \"\u7b54\u5bf9 7 \u9898\uff1aCCC \u521d\u7ea7\u6ee1\u5206\", \"8 correct: CCC S45s readiness\": \"\u7b54\u5bf9 8 \u9898\uff1a\u5177\u5907 CCC \u9ad8\u7ea745\u5206\u5b66\u4e60\u51c6\u5907\u5ea6\", \"Part 2: Coding Challenge\": \"\u7b2c\u4e8c\u90e8\u5206\uff1a\u4ee3\u7801\u6311\u6218\", \"Section B: Coding Fundamentals\": \"B \u90e8\u5206\uff1a\u7f16\u7a0b\u57fa\u7840\u4ee3\u7801\u9898\", \"Section C: CCC Similar Problems\": \"C \u90e8\u5206\uff1aCCC \u76f8\u4f3c\u9898\", \"These problems are reviewed with the rubric below. They measure input handling, core logic, output format, and code quality.\": \"\u8fd9\u4e9b\u9898\u76ee\u4f1a\u6309\u7167\u4e0b\u65b9\u8bc4\u5206\u6807\u51c6\u8bc4\u4f30\uff0c\u91cd\u70b9\u770b\u8f93\u5165\u5904\u7406\u3001\u6838\u5fc3\u903b\u8f91\u3001\u8f93\u51fa\u683c\u5f0f\u548c\u4ee3\u7801\u8d28\u91cf\u3002\", \"Sum of Even Numbers\": \"\u5076\u6570\u6c42\u548c\", \"Input n followed by n integers. Output the sum of even values.\": \"\u8f93\u5165 n\uff0c\u7136\u540e\u8f93\u5165 n \u4e2a\u6574\u6570\uff0c\u8f93\u51fa\u5176\u4e2d\u5076\u6570\u7684\u603b\u548c\u3002\", \"Read n, then n integers. Print the sum of all even numbers. Example: 5 and 10 3 20 7 8 -> 38.\": \"\u8bfb\u5165 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\uff0c\u8f93\u51fa\u6240\u6709\u5076\u6570\u7684\u603b\u548c\u3002\u4f8b\u5982\uff1a5 \u548c 10 3 20 7 8 -> 38\u3002\", \"Write a program that reads an integer n, then reads n integers. Print the sum of all even numbers. Example input: 5 \/ 3 \/ 8 \/ 10 \/ 7 \/ 2. Example output: 20.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\u6240\u6709\u5076\u6570\u7684\u603b\u548c\u3002\u793a\u4f8b\u8f93\u5165\uff1a5 \/ 3 \/ 8 \/ 10 \/ 7 \/ 2\u3002\u793a\u4f8b\u8f93\u51fa\uff1a20\u3002\", \"Write a program that reads an integer n, then reads n integers. Print the sum of all even numbers. Write a program that reads an integer n, then reads n integers. Print the sum of all even numbers. Example input: 5 \/ 3 \/ 8 \/ 10 \/ 7 \/ 2. Example output: 20.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\u6240\u6709\u5076\u6570\u7684\u603b\u548c\u3002\u8f93\u5165\uff1an\uff0c\u7136\u540e\u8f93\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\uff1a\u6240\u6709\u5076\u6570\u7684\u603b\u548c\u3002\u793a\u4f8b\u8f93\u5165\uff1a5 \/ 10 3 20 7 8\u3002\u793a\u4f8b\u8f93\u51fa\uff1a38\u3002\", \"Count Vowels\": \"\u7edf\u8ba1\u5143\u97f3\", \"Implement count_vowels(s).\": \"\u5b9e\u73b0 count_vowels(s)\u3002\", \"Write count_vowels(s). Count a, e, i, o, u in both uppercase and lowercase letters.\": \"\u7f16\u5199 count_vowels(s)\uff0c\u7edf\u8ba1 a\u3001e\u3001i\u3001o\u3001u\uff0c\u5305\u62ec\u5927\u5c0f\u5199\u3002\", \"Write a program that reads one string. Count how many vowels it contains, including a, e, i, o, and u, without caring about uppercase or lowercase letters. Input: one string. Output: the number of vowels. Example input: Hello World. Example output: 3.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u5b57\u7b26\u4e32\u3002\u7edf\u8ba1\u5176\u4e2d\u5305\u542b\u591a\u5c11\u4e2a\u5143\u97f3\u5b57\u6bcd\uff0c\u5305\u62ec a\u3001e\u3001i\u3001o\u3001u\uff0c\u4e0d\u533a\u5206\u5927\u5c0f\u5199\u3002\u8f93\u5165\uff1a\u4e00\u4e2a\u5b57\u7b26\u4e32\u3002\u8f93\u51fa\uff1a\u5143\u97f3\u6570\u91cf\u3002\u793a\u4f8b\u8f93\u5165\uff1aHello World\u3002\u793a\u4f8b\u8f93\u51fa\uff1a3\u3002\", \"Write a function count_vowels(s). The function returns the number of vowels in the string. Vowels are a, e, i, o, u, both uppercase and lowercase. Example: count_vowels(\\\"Hello World\\\"). Output: 3.\": \"\u7f16\u5199\u51fd\u6570 count_vowels(s)\u3002\u8be5\u51fd\u6570\u8fd4\u56de\u5b57\u7b26\u4e32\u4e2d\u7684\u5143\u97f3\u6570\u91cf\u3002\u5143\u97f3\u5305\u62ec a\u3001e\u3001i\u3001o\u3001u\uff0c\u5305\u542b\u5927\u5c0f\u5199\u3002\u793a\u4f8b\uff1acount_vowels(\\\"Hello World\\\")\u3002\u8f93\u51fa\uff1a3\u3002\", \"Write a function count_vowels(s). The function returns the number of vowels in the string. Vowels are a, e, i, o, u, both uppercase and lowercase. Example: count_vowels('Hello World'). Output: 3.\": \"\u7f16\u5199\u51fd\u6570 count_vowels(s)\u3002\u8be5\u51fd\u6570\u8fd4\u56de\u5b57\u7b26\u4e32\u4e2d\u7684\u5143\u97f3\u6570\u91cf\u3002\u5143\u97f3\u5305\u62ec a\u3001e\u3001i\u3001o\u3001u\uff0c\u5305\u542b\u5927\u5c0f\u5199\u3002\u793a\u4f8b\uff1acount_vowels('Hello World')\u3002\u8f93\u51fa\uff1a3\u3002\", \"Maximum Difference\": \"\u6700\u5927\u5dee\u503c\", \"Output max(list) - min(list).\": \"\u8f93\u51fa max(list) - min(list)\u3002\", \"Read a list of integers and print the difference between the largest and smallest value.\": \"\u8bfb\u5165\u4e00\u7ec4\u6574\u6570\uff0c\u8f93\u51fa\u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u4e4b\u95f4\u7684\u5dee\u3002\", \"Write a program that reads an integer n, then reads n integers. Print the difference between the largest and smallest value. Input: n, then n integers. Output: largest value minus smallest value. Example input: 5 \/ 6 20 15 7 9. Example output: 13.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u4e4b\u95f4\u7684\u5dee\u3002\u8f93\u5165\uff1an\uff0c\u7136\u540e\u8f93\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\uff1a\u6700\u5927\u503c\u51cf\u6700\u5c0f\u503c\u3002\u793a\u4f8b\u8f93\u5165\uff1a5 \/ 6 20 15 7 9\u3002\u793a\u4f8b\u8f93\u51fa\uff1a13\u3002\", \"Read an integer n, then read n integers into a list. Print the difference between the largest and smallest number. Example input: 6 \/ 10 \/ 3 \/ 8 \/ 20 \/ 15 \/ 7. Example output: 17.\": \"\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\u5230\u5217\u8868\u4e2d\u3002\u8f93\u51fa\u6700\u5927\u6570\u548c\u6700\u5c0f\u6570\u4e4b\u95f4\u7684\u5dee\u3002\u793a\u4f8b\u8f93\u5165\uff1a6 \/ 10 \/ 3 \/ 8 \/ 20 \/ 15 \/ 7\u3002\u793a\u4f8b\u8f93\u51fa\uff1a17\u3002\", \"Write a program that reads an integer n, then reads n integers. Print the difference between the largest and smallest value. Write a program that reads an integer n, then reads n integers. Print the difference between the largest and smallest value. Input: n, then n integers. Output: largest value minus smallest value. Example input: 5 \/ 6 20 15 7 9. Example output: 13.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\u6700\u5927\u503c\u548c\u6700\u5c0f\u503c\u4e4b\u95f4\u7684\u5dee\u3002\u8f93\u5165\uff1an\uff0c\u7136\u540e\u8f93\u5165 n \u4e2a\u6574\u6570\u3002\u8f93\u51fa\uff1a\u6700\u5927\u503c\u51cf\u6700\u5c0f\u503c\u3002\u793a\u4f8b\u8f93\u5165\uff1a5 \/ 6 20 15 7 9\u3002\u793a\u4f8b\u8f93\u51fa\uff1a13\u3002\", \"Health Simulation\": \"\u751f\u547d\u503c\u6a21\u62df\", \"Simple Simulation\": \"\u7b80\u5355\u6a21\u62df\", \"Start at 100 HP. hit = -10, heal = +5, miss = 0. Clamp the result to 0..100.\": \"\u521d\u59cb 100 HP\u3002hit = -10\uff0cheal = +5\uff0cmiss = 0\u3002\u7ed3\u679c\u9650\u5236\u5728 0..100\u3002\", \"Start at 100 health. For each event: hit decreases by 10, heal increases by 5, miss changes nothing. Keep health between 0 and 100.\": \"\u521d\u59cb\u751f\u547d\u503c\u4e3a 100\u3002\u6bcf\u4e2a\u4e8b\u4ef6\u4e2d\uff1ahit \u51cf\u5c11 10\uff0cheal \u589e\u52a0 5\uff0cmiss \u4e0d\u53d8\u3002\u751f\u547d\u503c\u4fdd\u6301\u5728 0 \u5230 100 \u4e4b\u95f4\u3002\", \"Write a program that simulates a player's health. Read a starting health value and a sequence of events. A hit subtracts 10, a heal adds 5, and a miss changes nothing. Keep the final health between 0 and 100. Input: starting health and events. Output: final health.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u6a21\u62df\u73a9\u5bb6\u7684\u751f\u547d\u503c\u3002\u8bfb\u5165\u521d\u59cb\u751f\u547d\u503c\u548c\u4e00\u4e32\u4e8b\u4ef6\u3002hit \u51cf\u5c11 10\uff0cheal \u589e\u52a0 5\uff0cmiss \u4e0d\u6539\u53d8\u751f\u547d\u503c\u3002\u6700\u7ec8\u751f\u547d\u503c\u9700\u8981\u4fdd\u6301\u5728 0 \u5230 100 \u4e4b\u95f4\u3002\u8f93\u5165\uff1a\u521d\u59cb\u751f\u547d\u503c\u548c\u4e8b\u4ef6\u3002\u8f93\u51fa\uff1a\u6700\u7ec8\u751f\u547d\u503c\u3002\", \"A player starts with 100 health points. Read an integer n, then read n actions. Each action is hit, heal, or miss. hit decreases health by 10, heal increases health by 5, and miss does not change health. Health cannot go below 0 or above 100. Print the final health. Example input: 5 \/ hit \/ hit \/ heal \/ miss \/ hit. Example output: 75.\": \"\u73a9\u5bb6\u521d\u59cb\u6709 100 \u70b9\u751f\u547d\u503c\u3002\u8bfb\u5165\u4e00\u4e2a\u6574\u6570 n\uff0c\u7136\u540e\u8bfb\u5165 n \u4e2a\u52a8\u4f5c\u3002\u6bcf\u4e2a\u52a8\u4f5c\u662f hit\u3001heal \u6216 miss\u3002hit \u8ba9\u751f\u547d\u503c\u51cf\u5c11 10\uff0cheal \u8ba9\u751f\u547d\u503c\u589e\u52a0 5\uff0cmiss \u4e0d\u6539\u53d8\u751f\u547d\u503c\u3002\u751f\u547d\u503c\u4e0d\u80fd\u4f4e\u4e8e 0\uff0c\u4e5f\u4e0d\u80fd\u9ad8\u4e8e 100\u3002\u8f93\u51fa\u6700\u7ec8\u751f\u547d\u503c\u3002\u793a\u4f8b\u8f93\u5165\uff1a5 \/ hit \/ hit \/ heal \/ miss \/ hit\u3002\u793a\u4f8b\u8f93\u51fa\uff1a75\u3002\", \"Pizza Party\": \"\u62ab\u8428\u6d3e\u5bf9\", \"Pizza Party (J2)\": \"\u62ab\u8428\u6d3e\u5bf9\uff08J2\uff09\", \"Determine whether there are enough slices for all students.\": \"\u5224\u65ad\u62ab\u8428\u662f\u5426\u8db3\u591f\u5206\u7ed9\u6240\u6709\u5b66\u751f\u3002\", \"Given the number of pizzas, slices per pizza, and students, print Enough if every student can get a slice; otherwise print Not enough.\": \"\u7ed9\u5b9a\u62ab\u8428\u6570\u91cf\u3001\u6bcf\u4e2a\u62ab\u8428\u7684\u5207\u7247\u6570\u548c\u5b66\u751f\u4eba\u6570\uff0c\u5982\u679c\u6bcf\u4f4d\u5b66\u751f\u90fd\u80fd\u5206\u5230\u4e00\u7247\u5219\u8f93\u51fa Enough\uff0c\u5426\u5219\u8f93\u51fa Not enough\u3002\", \"Write a program that reads the number of pizzas, the number of slices per pizza, and the number of students. Print Enough if every student can get at least one slice; otherwise print Not enough. Example: 2 pizzas, 6 slices each, 10 students -> Enough.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u62ab\u8428\u6570\u91cf\u3001\u6bcf\u4e2a\u62ab\u8428\u7684\u5207\u7247\u6570\u548c\u5b66\u751f\u4eba\u6570\u3002\u5982\u679c\u6bcf\u4f4d\u5b66\u751f\u81f3\u5c11\u80fd\u5206\u5230\u4e00\u7247\uff0c\u5219\u8f93\u51fa Enough\uff1b\u5426\u5219\u8f93\u51fa Not enough\u3002\u793a\u4f8b\uff1a2 \u4e2a\u62ab\u8428\uff0c\u6bcf\u4e2a 6 \u7247\uff0c10 \u4e2a\u5b66\u751f -> Enough\u3002\", \"A school is running a pizza party. Each small pizza has 6 slices, and each large pizza has 10 slices. Read the number of small pizzas, the number of large pizzas, and the number of students. Each student needs exactly 2 slices. Print Enough if there are enough slices; otherwise print Not enough. Example input: 3 \/ 2 \/ 20. Example output: Not enough.\": \"\u5b66\u6821\u6b63\u5728\u4e3e\u529e\u62ab\u8428\u6d3e\u5bf9\u3002\u6bcf\u4e2a\u5c0f\u62ab\u8428\u6709 6 \u7247\uff0c\u6bcf\u4e2a\u5927\u62ab\u8428\u6709 10 \u7247\u3002\u8bfb\u5165\u5c0f\u62ab\u8428\u6570\u91cf\u3001\u5927\u62ab\u8428\u6570\u91cf\u548c\u5b66\u751f\u4eba\u6570\u3002\u6bcf\u4f4d\u5b66\u751f\u6b63\u597d\u9700\u8981 2 \u7247\u3002\u5982\u679c\u62ab\u8428\u7247\u8db3\u591f\uff0c\u5219\u8f93\u51fa Enough\uff1b\u5426\u5219\u8f93\u51fa Not enough\u3002\u793a\u4f8b\u8f93\u5165\uff1a3 \/ 2 \/ 20\u3002\u793a\u4f8b\u8f93\u51fa\uff1aNot enough\u3002\", \"Balanced Word\": \"\u5e73\u8861\u5355\u8bcd\", \"Balanced Word (J3)\": \"\u5e73\u8861\u5355\u8bcd\uff08J3\uff09\", \"Check whether vowels and consonants are equal.\": \"\u5224\u65ad\u5143\u97f3\u548c\u8f85\u97f3\u6570\u91cf\u662f\u5426\u76f8\u7b49\u3002\", \"A word is balanced if its vowel count equals its consonant count. Only lowercase letters are included.\": \"\u5982\u679c\u4e00\u4e2a\u5355\u8bcd\u4e2d\u7684\u5143\u97f3\u6570\u91cf\u7b49\u4e8e\u8f85\u97f3\u6570\u91cf\uff0c\u5219\u5b83\u662f\u5e73\u8861\u5355\u8bcd\u3002\u53ea\u5305\u542b\u5c0f\u5199\u5b57\u6bcd\u3002\", \"Write a program that reads one lowercase word. Count vowels and consonants. Print Balanced if the two counts are equal; otherwise print Not balanced. Example input: banana. Example output: Balanced.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u5c0f\u5199\u5355\u8bcd\u3002\u7edf\u8ba1\u5143\u97f3\u548c\u8f85\u97f3\u6570\u91cf\u3002\u5982\u679c\u4e24\u8005\u6570\u91cf\u76f8\u7b49\uff0c\u5219\u8f93\u51fa Balanced\uff1b\u5426\u5219\u8f93\u51fa Not balanced\u3002\u793a\u4f8b\u8f93\u5165\uff1abanana\u3002\u793a\u4f8b\u8f93\u51fa\uff1aBalanced\u3002\", \"A word is called balanced if the number of vowels equals the number of consonants. Read one lowercase word. Only letters are included. Print Balanced or Not balanced. Example input: banana. Example output: Balanced. Explanation: vowels = 3, consonants = 3.\": \"\u5982\u679c\u4e00\u4e2a\u5355\u8bcd\u4e2d\u7684\u5143\u97f3\u6570\u91cf\u7b49\u4e8e\u8f85\u97f3\u6570\u91cf\uff0c\u5219\u79f0\u4e3a balanced\u3002\u8bfb\u5165\u4e00\u4e2a\u5c0f\u5199\u5355\u8bcd\uff0c\u53ea\u5305\u542b\u5b57\u6bcd\u3002\u8f93\u51fa Balanced \u6216 Not balanced\u3002\u793a\u4f8b\u8f93\u5165\uff1abanana\u3002\u793a\u4f8b\u8f93\u51fa\uff1aBalanced\u3002\u89e3\u91ca\uff1a\u5143\u97f3 = 3\uff0c\u8f85\u97f3 = 3\u3002\", \"String Compression\": \"\u5b57\u7b26\u4e32\u538b\u7f29\", \"String Compression (J4)\": \"\u5b57\u7b26\u4e32\u538b\u7f29\uff08J4\uff09\", \"Compress aaabbcdddd as a3b2c1d4.\": \"\u5c06 aaabbcdddd \u538b\u7f29\u4e3a a3b2c1d4\u3002\", \"Compress consecutive repeated characters, such as aaabbcdddd -> a3b2c1d4.\": \"\u538b\u7f29\u8fde\u7eed\u91cd\u590d\u5b57\u7b26\uff0c\u4f8b\u5982 aaabbcdddd -> a3b2c1d4\u3002\", \"Write a program that reads one string and compresses consecutive repeated characters. For each group, print the character followed by its count. Example input: aaabbcdddd. Example output: a3b2c1d4.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u5e76\u538b\u7f29\u8fde\u7eed\u91cd\u590d\u5b57\u7b26\u3002\u5bf9\u6bcf\u4e00\u7ec4\u8fde\u7eed\u5b57\u7b26\uff0c\u8f93\u51fa\u8be5\u5b57\u7b26\u548c\u51fa\u73b0\u6b21\u6570\u3002\u793a\u4f8b\u8f93\u5165\uff1aaaabbcdddd\u3002\u793a\u4f8b\u8f93\u51fa\uff1aa3b2c1d4\u3002\", \"Read a string and compress consecutive repeated characters. For each group, print the character followed by its count. Example input: aaabbcdddd. Example output: a3b2c1d4. Another example input: abcd. Another example output: a1b1c1d1.\": \"\u8bfb\u5165\u4e00\u4e2a\u5b57\u7b26\u4e32\uff0c\u5e76\u538b\u7f29\u8fde\u7eed\u91cd\u590d\u5b57\u7b26\u3002\u5bf9\u6bcf\u4e00\u7ec4\u8fde\u7eed\u5b57\u7b26\uff0c\u8f93\u51fa\u8be5\u5b57\u7b26\u548c\u51fa\u73b0\u6b21\u6570\u3002\u793a\u4f8b\u8f93\u5165\uff1aaaabbcdddd\u3002\u793a\u4f8b\u8f93\u51fa\uff1aa3b2c1d4\u3002\u53e6\u4e00\u4e2a\u793a\u4f8b\u8f93\u5165\uff1aabcd\u3002\u53e6\u4e00\u4e2a\u793a\u4f8b\u8f93\u51fa\uff1aa1b1c1d1\u3002\", \"Pair Sum Equals 10\": \"\u4e24\u6570\u548c\u4e3a 10\", \"Pair Sum Equals 10 (J5 readiness)\": \"\u4e24\u6570\u548c\u4e3a 10\uff08J5 \u51c6\u5907\u5ea6\uff09\", \"Count non-overlapping pairs whose sum is 10.\": \"\u7edf\u8ba1\u4e0d\u91cd\u53e0\u4e14\u548c\u4e3a 10 \u7684\u914d\u5bf9\u6570\u91cf\u3002\", \"Count non-overlapping pairs whose values sum to 10. Each number can be used at most once.\": \"\u7edf\u8ba1\u6570\u503c\u548c\u4e3a 10 \u7684\u4e0d\u91cd\u53e0\u914d\u5bf9\uff0c\u6bcf\u4e2a\u6570\u5b57\u6700\u591a\u53ea\u80fd\u4f7f\u7528\u4e00\u6b21\u3002\", \"Write a program that reads a list of numbers. Count how many non-overlapping pairs have a sum of 10. Each number can be used at most once. Example input: 1 9 5 5 7 3. Example output: 3.\": \"\u7f16\u5199\u4e00\u4e2a\u7a0b\u5e8f\uff0c\u8bfb\u5165\u4e00\u7ec4\u6570\u5b57\u3002\u7edf\u8ba1\u6709\u591a\u5c11\u4e2a\u4e0d\u91cd\u53e0\u7684\u914d\u5bf9\u4e4b\u548c\u4e3a 10\uff0c\u6bcf\u4e2a\u6570\u5b57\u6700\u591a\u53ea\u80fd\u4f7f\u7528\u4e00\u6b21\u3002\u793a\u4f8b\u8f93\u5165\uff1a1 9 5 5 7 3\u3002\u793a\u4f8b\u8f93\u51fa\uff1a3\u3002\", \"You are given n numbers. Count how many non-overlapping pairs have a sum equal to 10. Each number can be used only once per pair. Example input: 6 \/ 1 \/ 9 \/ 5 \/ 5 \/ 7 \/ 3. Example output: 3. Pairs: 1 + 9, 5 + 5, 7 + 3.\": \"\u7ed9\u5b9a n \u4e2a\u6570\u5b57\u3002\u7edf\u8ba1\u6709\u591a\u5c11\u4e2a\u4e0d\u91cd\u53e0\u7684\u914d\u5bf9\u4e4b\u548c\u7b49\u4e8e 10\u3002\u6bcf\u4e2a\u6570\u5b57\u5728\u914d\u5bf9\u4e2d\u53ea\u80fd\u4f7f\u7528\u4e00\u6b21\u3002\u793a\u4f8b\u8f93\u5165\uff1a6 \/ 1 \/ 9 \/ 5 \/ 5 \/ 7 \/ 3\u3002\u793a\u4f8b\u8f93\u51fa\uff1a3\u3002\u914d\u5bf9\uff1a1 + 9\uff0c5 + 5\uff0c7 + 3\u3002\", \"Coding Rubric\": \"\u4ee3\u7801\u9898\u8bc4\u5206\u6807\u51c6\", \"Input Handling: 20%\": \"\u8f93\u5165\u5904\u7406\uff1a20%\", \"Core Logic: 50%\": \"\u6838\u5fc3\u903b\u8f91\uff1a50%\", \"Output Format: 20%\": \"\u8f93\u51fa\u683c\u5f0f\uff1a20%\", \"Code Quality: 10%\": \"\u4ee3\u7801\u8d28\u91cf\uff1a10%\", \"Complete the embedded OneCompiler challenge to test implementation ability in a realistic coding environment.\": \"\u5b8c\u6210\u5d4c\u5165\u7684 OneCompiler \u6311\u6218\uff0c\u5728\u771f\u5b9e\u4ee3\u7801\u73af\u5883\u4e2d\u6d4b\u8bd5\u5b9e\u73b0\u80fd\u529b\u3002\", \"Use the embedded Python editor below to solve Section B and Section C problems. You can write and run code directly in the browser.\": \"\u4f7f\u7528\u4e0b\u65b9\u5d4c\u5165\u7684 Python \u7f16\u8f91\u5668\u5b8c\u6210 B \u90e8\u5206\u548c C \u90e8\u5206\u9898\u76ee\u3002\u4f60\u53ef\u4ee5\u76f4\u63a5\u5728\u6d4f\u89c8\u5668\u4e2d\u7f16\u5199\u5e76\u8fd0\u884c\u4ee3\u7801\u3002\", \"Online Coding\": \"\u5728\u7ebf\u7f16\u7a0b\", \"How to read your result\": \"\u5982\u4f55\u7406\u89e3\u7ed3\u679c\", \"0-40: Foundation Programming\": \"0-40\uff1a\u7f16\u7a0b\u57fa\u7840\", \"41-60: CCC J30s\": \"41-60\uff1aCCC \u521d\u7ea730\u5206\", \"41-60: CCC \u521d\u7ea730\u5206\": \"41-60\uff1aCCC \u521d\u7ea730\u5206\", \"61-75: CCC J60s\": \"61-75\uff1aCCC \u521d\u7ea760\u5206\", \"61-75: CCC \u521d\u7ea760\u5206\": \"61-75\uff1aCCC \u521d\u7ea760\u5206\", \"76-90: CCC J75s\": \"76-90\uff1aCCC \u521d\u7ea7\u6ee1\u5206\", \"76-90: CCC \u521d\u7ea7\u6ee1\u5206\": \"76-90\uff1aCCC \u521d\u7ea7\u6ee1\u5206\", \"91+: CCC S45s readiness\": \"91+\uff1a\u5177\u5907 CCC \u9ad8\u7ea745\u5206\u5b66\u4e60\u51c6\u5907\u5ea6\", \"91+: CCC \u9ad8\u7ea745\u5206 readiness\": \"91+\uff1a\u5177\u5907 CCC \u9ad8\u7ea745\u5206\u5b66\u4e60\u51c6\u5907\u5ea6\", \"0-30: Beginner Python\": \"0-30\uff1aPython \u5165\u95e8\", \"31-50: Python Foundations\": \"31-50\uff1aPython \u57fa\u7840\", \"51-70: CCC Junior J1-J2 Ready\": \"51-70\uff1a\u9002\u5408 CCC \u521d\u7ea7 J1-J2\", \"71-85: CCC Junior J3-J4 Ready\": \"71-85\uff1a\u9002\u5408 CCC \u521d\u7ea7 J3-J4\", \"86-100: CCC Junior J5 Ready \/ Advanced\": \"86-100\uff1a\u9002\u5408 CCC \u521d\u7ea7 J5 \/ \u8fdb\u9636\u5b66\u4e60\", \"Check Section A Score\": \"\u67e5\u770b A \u90e8\u5206\u5206\u6570\", \"Book a Placement Consultation\": \"\u9884\u7ea6\u5206\u7ea7\u54a8\u8be2\", \"Multiple choice\": \"\u9009\u62e9\u9898\", \"+ coding task\": \"+ \u4ee3\u7801\u9898\", \"Get a practical signal before choosing a learning path.\": \"\u5728\u9009\u62e9\u5b66\u4e60\u8def\u5f84\u524d\uff0c\u83b7\u5f97\u4e00\u4e2a\u5b9e\u7528\u7684\u80fd\u529b\u53c2\u8003\u3002\", \"Implementation\": \"\u4ee3\u7801\u5b9e\u73b0\", \"Placement Guide\": \"\u5206\u7ea7\u5efa\u8bae\", \"What index does the first item in a Python list have?\": \"Python \u5217\u8868\u4e2d\u7b2c\u4e00\u4e2a\u5143\u7d20\u7684\u7d22\u5f15\u662f\u591a\u5c11\uff1f\", \"What values are produced by range(3)?\": \"range(3) \u4f1a\u4ea7\u751f\u54ea\u4e9b\u503c\uff1f\", \"Which tool is most appropriate for repeating an action a known number of times?\": \"\u5f53\u9700\u8981\u91cd\u590d\u6267\u884c\u5df2\u77e5\u6b21\u6570\u7684\u64cd\u4f5c\u65f6\uff0c\u6700\u5408\u9002\u7684\u5de5\u5177\u662f\u4ec0\u4e48\uff1f\", \"What does n % 2 == 0 usually test?\": \"n % 2 == 0 \u901a\u5e38\u7528\u4e8e\u5224\u65ad\u4ec0\u4e48\uff1f\", \"Which data structure stores ordered, mutable values?\": \"\u54ea\u79cd\u6570\u636e\u7ed3\u6784\u53ef\u4ee5\u5b58\u50a8\u6709\u5e8f\u4e14\u53ef\u4fee\u6539\u7684\u6570\u636e\uff1f\", \"If you scan a list once from left to right, what is the usual time complexity?\": \"\u5982\u679c\u4ece\u5de6\u5230\u53f3\u626b\u63cf\u4e00\u4e2a\u5217\u8868\u4e00\u6b21\uff0c\u901a\u5e38\u7684\u65f6\u95f4\u590d\u6742\u5ea6\u662f\u591a\u5c11\uff1f\", \"For s = 'abc', what is s[1]?\": \"\u5bf9\u4e8e s = 'abc'\uff0cs[1] \u662f\u4ec0\u4e48\uff1f\", \"Which structure is usually best for counting frequencies?\": \"\u7edf\u8ba1\u51fa\u73b0\u9891\u7387\u65f6\u901a\u5e38\u6700\u9002\u5408\u4f7f\u7528\u54ea\u79cd\u7ed3\u6784\uff1f\", \"A dictionary\": \"\u5b57\u5178\", \"A list\": \"\u5217\u8868\", \"A function\": \"\u51fd\u6570\", \"An if statement\": \"if \u8bed\u53e5\", \"A while loop only\": \"\u53ea\u80fd\u4f7f\u7528 while \u5faa\u73af\", \"A for loop\": \"for \u5faa\u73af\", \"Whether n is even\": \"n \u662f\u5426\u4e3a\u5076\u6570\", \"Whether n is negative\": \"n \u662f\u5426\u4e3a\u8d1f\u6570\", \"Whether n is a string\": \"n \u662f\u5426\u4e3a\u5b57\u7b26\u4e32\", \"Modern Software Teams\": \"\u9762\u5411\u73b0\u4ee3\u8f6f\u4ef6\u56e2\u961f\", \"Practical Technology Consulting\": \"\u5b9e\u7528\u578b\u6280\u672f\u54a8\u8be2\", \"Independent guidance for software architecture, product delivery, and AI adoption decisions.\": \"\u4e3a\u8f6f\u4ef6\u67b6\u6784\u3001\u4ea7\u54c1\u4ea4\u4ed8\u548c AI \u91c7\u7528\u51b3\u7b56\u63d0\u4f9b\u72ec\u7acb\u5efa\u8bae\u3002\", \"Discuss a Project\": \"\u8ba8\u8bba\u9879\u76ee\", \"20+ years\": \"20+ \u5e74\", \"Software engineering, architecture, teaching, and advisory experience.\": \"\u8f6f\u4ef6\u5de5\u7a0b\u3001\u67b6\u6784\u3001\u6559\u5b66\u4e0e\u54a8\u8be2\u7ecf\u9a8c\u3002\", \"Consulting Services\": \"\u54a8\u8be2\u670d\u52a1\", \"Focused guidance for technical decisions that matter.\": \"\u56f4\u7ed5\u5173\u952e\u6280\u672f\u51b3\u7b56\u63d0\u4f9b\u805a\u7126\u3001\u52a1\u5b9e\u7684\u6307\u5bfc\u3002\", \".NET Solution Consulting\": \".NET \u89e3\u51b3\u65b9\u6848\u54a8\u8be2\", \"ASP.NET Core, Web API, microservices, Azure, and enterprise systems.\": \"ASP.NET Core\u3001Web API\u3001\u5fae\u670d\u52a1\u3001Azure \u4e0e\u4f01\u4e1a\u7cfb\u7edf\u3002\", \"ASP.NET Core, Web API, microservices, Azure, enterprise systems.\": \"ASP.NET Core\u3001Web API\u3001\u5fae\u670d\u52a1\u3001Azure\u3001\u4f01\u4e1a\u7cfb\u7edf\u3002\", \"React Solution Consulting\": \"React \u89e3\u51b3\u65b9\u6848\u54a8\u8be2\", \"React, TypeScript, state management, performance optimization, and front-end architecture.\": \"React\u3001TypeScript\u3001\u72b6\u6001\u7ba1\u7406\u3001\u6027\u80fd\u4f18\u5316\u4e0e\u524d\u7aef\u67b6\u6784\u3002\", \"React, TypeScript, state management, performance, front-end architecture.\": \"React\u3001TypeScript\u3001\u72b6\u6001\u7ba1\u7406\u3001\u6027\u80fd\u4e0e\u524d\u7aef\u67b6\u6784\u3002\", \"Software Architecture Review\": \"\u8f6f\u4ef6\u67b6\u6784\u8bc4\u5ba1\", \"Scalability, maintainability, system design, and technical risk assessment.\": \"\u53ef\u6269\u5c55\u6027\u3001\u53ef\u7ef4\u62a4\u6027\u3001\u7cfb\u7edf\u8bbe\u8ba1\u4e0e\u6280\u672f\u98ce\u9669\u8bc4\u4f30\u3002\", \"AI Adoption Consulting\": \"AI \u5e94\u7528\u54a8\u8be2\", \"AI evaluation, integration, business process automation, and AI strategy.\": \"AI \u8bc4\u4f30\u3001\u96c6\u6210\u3001\u4e1a\u52a1\u6d41\u7a0b\u81ea\u52a8\u5316\u4e0e AI \u7b56\u7565\u3002\", \"Technical Project Advisory\": \"\u6280\u672f\u9879\u76ee\u987e\u95ee\", \"Independent technology guidance for small businesses, startups, and technology teams.\": \"\u4e3a\u5c0f\u578b\u4f01\u4e1a\u3001\u521b\u4e1a\u56e2\u961f\u548c\u6280\u672f\u56e2\u961f\u63d0\u4f9b\u72ec\u7acb\u6280\u672f\u5efa\u8bae\u3002\", \"How Engagements Work\": \"\u5408\u4f5c\u65b9\u5f0f\", \"Clear, practical, and implementation-aware.\": \"\u6e05\u6670\u3001\u52a1\u5b9e\uff0c\u5e76\u5173\u6ce8\u5b9e\u9645\u843d\u5730\u3002\", \"Assess\": \"\u8bc4\u4f30\", \"Understand product goals, current architecture, risks, and constraints.\": \"\u7406\u89e3\u4ea7\u54c1\u76ee\u6807\u3001\u5f53\u524d\u67b6\u6784\u3001\u98ce\u9669\u4e0e\u7ea6\u675f\u3002\", \"Recommend\": \"\u5efa\u8bae\", \"Prioritize decisions with clear tradeoffs and implementation paths.\": \"\u660e\u786e\u53d6\u820d\u4e0e\u5b9e\u65bd\u8def\u5f84\uff0c\u5e2e\u52a9\u786e\u5b9a\u51b3\u7b56\u4f18\u5148\u7ea7\u3002\", \"Support\": \"\u652f\u6301\", \"Guide teams through delivery, review, and adoption.\": \"\u652f\u6301\u56e2\u961f\u5b8c\u6210\u4ea4\u4ed8\u3001\u8bc4\u5ba1\u4e0e\u6280\u672f\u91c7\u7528\u3002\", \"Founded in 2018\": \"\u521b\u7acb\u4e8e 2018 \u5e74\", \"Learn to Think, Build, and Lead.\": \"\u5b66\u4f1a\u601d\u8003\u3001\u6784\u5efa\u4e0e\u5f15\u9886\u3002\", \"LearntoThink,Build,andLead.\": \"\u5b66\u4f1a\u601d\u8003\u3001\u6784\u5efa\u4e0e\u5f15\u9886\u3002\", \"Learn to Think,\": \"\u5b66\u4f1a\u601d\u8003\uff0c\", \"Build,\": \"\u6784\u5efa\uff0c\", \"and Lead.\": \"\u5e76\u5f15\u9886\u3002\", \"Technology education and practical engineering expertise.\": \"\u79d1\u6280\u6559\u80b2\u4e0e\u5b9e\u7528\u5de5\u7a0b\u7ecf\u9a8c\u3002\", \"Accel Thinking empowers organizations and learners through technology education and practical engineering expertise.\": \"\u52a0\u901f\u5ea6\u601d\u7ef4\u901a\u8fc7\u79d1\u6280\u6559\u80b2\u548c\u5b9e\u7528\u5de5\u7a0b\u7ecf\u9a8c\u8d4b\u80fd\u7ec4\u7ec7\u4e0e\u5b66\u4e60\u8005\u3002\", \"Founded in 2018, Accel Thinking empowers organizations and learners through technology education and practical engineering expertise.\": \"\u52a0\u901f\u5ea6\u601d\u7ef4\u521b\u7acb\u4e8e 2018 \u5e74\uff0c\u901a\u8fc7\u79d1\u6280\u6559\u80b2\u548c\u5b9e\u7528\u5de5\u7a0b\u7ecf\u9a8c\u8d4b\u80fd\u7ec4\u7ec7\u4e0e\u5b66\u4e60\u8005\u3002\", \"Company Philosophy\": \"\u516c\u53f8\u7406\u5ff5\", \"We do not simply teach programming.\": \"\u6211\u4eec\u4e0d\u53ea\u662f\u6559\u7f16\u7a0b\u3002\", \"We help students develop problem-solving skills, computational thinking, and engineering mindsets that prepare them for future success.\": \"\u6211\u4eec\u5e2e\u52a9\u5b66\u751f\u53d1\u5c55\u95ee\u9898\u89e3\u51b3\u80fd\u529b\u3001\u8ba1\u7b97\u601d\u7ef4\u548c\u5de5\u7a0b\u5316\u601d\u7ef4\uff0c\u4e3a\u672a\u6765\u6210\u529f\u505a\u597d\u51c6\u5907\u3002\", \"Mission\": \"\u4f7f\u547d\", \"Empower organizations and learners through technology education and practical engineering expertise.\": \"\u901a\u8fc7\u79d1\u6280\u6559\u80b2\u548c\u5b9e\u7528\u5de5\u7a0b\u7ecf\u9a8c\u8d4b\u80fd\u7ec4\u7ec7\u4e0e\u5b66\u4e60\u8005\u3002\", \"Vision\": \"\u613f\u666f\", \"Become a trusted technology education and consulting partner.\": \"\u6210\u4e3a\u503c\u5f97\u4fe1\u8d56\u7684\u79d1\u6280\u6559\u80b2\u4e0e\u6280\u672f\u54a8\u8be2\u4f19\u4f34\u3002\", \"Founder Profile\": \"\u521b\u59cb\u4eba\u7b80\u4ecb\", \"Software Architect, Technology Educator, Curriculum Designer, 20+ years of software engineering experience.\": \"\u8f6f\u4ef6\u67b6\u6784\u5e08\u3001\u79d1\u6280\u6559\u80b2\u8005\u3001\u8bfe\u7a0b\u8bbe\u8ba1\u8005\uff0c\u62e5\u6709 20+ \u5e74\u8f6f\u4ef6\u5de5\u7a0b\u7ecf\u9a8c\u3002\", \"Tell us what you want to build, teach, or improve.\": \"\u544a\u8bc9\u6211\u4eec\u4f60\u60f3\u6784\u5efa\u3001\u5f00\u8bbe\u6216\u6539\u8fdb\u4ec0\u4e48\u3002\", \"Use this page for educational partnership inquiries, CP Academy questions, technology consulting, or general messages.\": \"\u4f60\u53ef\u4ee5\u901a\u8fc7\u672c\u9875\u9762\u54a8\u8be2\u6559\u80b2\u5408\u4f5c\u3001CP \u5b66\u9662\u3001\u6280\u672f\u54a8\u8be2\u6216\u4e00\u822c\u95ee\u9898\u3002\", \"Email info@accelthinking.com\": \"\u53d1\u9001\u90ae\u4ef6\u81f3 info@accelthinking.com\", \"Oakville, Ontario, Canada\": \"\u52a0\u62ff\u5927\u5b89\u5927\u7565\u7701\u5965\u514b\u7ef4\u5c14\", \"First\": \"\u59d3\", \"Last\": \"\u540d\", \"\u524d\u4e00\u9875\": \"\u59d3\", \"\u540e\u4e00\u9875\": \"\u540d\", \"Name\": \"\u59d3\u540d\", \"Email *\": \"\u7535\u5b50\u90ae\u7bb1 *\", \"Comment or Message\": \"\u7559\u8a00\", \"Contact Purpose\": \"\u8054\u7cfb\u76ee\u7684\", \"Submit\": \"\u63d0\u4ea4\", \"Inquiry Types\": \"\u54a8\u8be2\u7c7b\u578b\", \"Route each conversation to the right business goal.\": \"\u8ba9\u6bcf\u4e00\u6b21\u6c9f\u901a\u90fd\u5bf9\u5e94\u5230\u6e05\u6670\u7684\u4e1a\u52a1\u76ee\u6807\u3002\", \"Educational Partnership\": \"\u6559\u80b2\u5408\u4f5c\", \"Programs for learning centers, schools, academies, and community organizations.\": \"\u9762\u5411\u5b66\u4e60\u4e2d\u5fc3\u3001\u5b66\u6821\u3001\u57f9\u8bad\u673a\u6784\u548c\u793e\u533a\u7ec4\u7ec7\u7684\u8bfe\u7a0b\u9879\u76ee\u3002\", \"Competitive programming and CCC preparation for students aged 12-16.\": \"\u9762\u5411 12-16 \u5c81\u5b66\u751f\u7684\u7ade\u8d5b\u7f16\u7a0b\u4e0e CCC \u5907\u8003\u3002\", \"Technology Consulting\": \"\u6280\u672f\u54a8\u8be2\", \".NET, React, architecture review, AI adoption, and project advisory.\": \".NET\u3001React\u3001\u67b6\u6784\u8bc4\u5ba1\u3001AI \u5e94\u7528\u4e0e\u9879\u76ee\u987e\u95ee\u670d\u52a1\u3002\", \"Blog Category\": \"\u535a\u5ba2\u5206\u7c7b\", \"Weekly competitive programming posts for CCC practice, problem solving, and student learning outcomes.\": \"\u6bcf\u5468\u53d1\u5e03\u7ade\u8d5b\u7f16\u7a0b\u6587\u7ae0\uff0c\u652f\u6301 CCC \u7ec3\u4e60\u3001\u95ee\u9898\u89e3\u51b3\u4e0e\u5b66\u751f\u5b66\u4e60\u6210\u679c\u3002\", \"Latest Articles\": \"\u6700\u65b0\u6587\u7ae0\", \"CCC practice articles with structured explanations and implementation notes.\": \"\u5305\u542b\u7ed3\u6784\u5316\u8bb2\u89e3\u548c\u5b9e\u73b0\u8bf4\u660e\u7684 CCC \u7ec3\u4e60\u6587\u7ae0\u3002\", \"Read More ->\": \"\u9605\u8bfb\u5168\u6587 ->\", \"Back to Challenges\": \"\u8fd4\u56de\u6311\u6218\u5217\u8868\", \"Solution Format\": \"\u89e3\u9898\u7ed3\u6784\", \"summary -> concepts -> code -> review\": \"\u6982\u8ff0 -> \u6982\u5ff5 -> \u4ee3\u7801 -> \u590d\u76d8\", \"\u2190 Back to CP Weekly Challenge\": \"\u2190 \u8fd4\u56de CP \u6bcf\u5468\u6311\u6218\", \"CCC 2026 J4 - Snail Path Solution & Analysis\": \"CCC 2026 J4 - Snail Path \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2026 J4 \u2013 Snail Path Solution & Analysis\": \"CCC 2026 J4 - Snail Path \u89e3\u9898\u4e0e\u5206\u6790\", \"Simulate the snail step by step, track slimy squares with a visited set, and count every revisit.\": \"\u9010\u6b65\u6a21\u62df\u8717\u725b\u79fb\u52a8\uff0c\u7528 visited set \u8bb0\u5f55\u5df2\u7ecf\u53d8\u9ecf\u7684\u683c\u5b50\uff0c\u5e76\u7edf\u8ba1\u6bcf\u4e00\u6b21\u91cd\u65b0\u8fdb\u5165\u65e7\u683c\u5b50\u7684\u6b21\u6570\u3002\", \"Imagine the snail starts on one grid square. That starting square is already part of its trail, because the problem says the snail makes the squares it touches slimy. In the example \u201cmove east 3 squares\u201d, there are 4 slimy squares total, which includes the starting square.\": \"\u60f3\u8c61\u8717\u725b\u4ece\u4e00\u4e2a\u7f51\u683c\u65b9\u683c\u5f00\u59cb\u3002\u8fd9\u4e2a\u8d77\u59cb\u65b9\u683c\u5df2\u7ecf\u662f\u5b83\u8def\u5f84\u7684\u4e00\u90e8\u5206\uff0c\u56e0\u4e3a\u9898\u76ee\u8bf4\u660e\u8717\u725b\u78b0\u5230\u7684\u65b9\u683c\u4f1a\u53d8\u9ecf\u3002\u5728\u201c\u5411\u4e1c\u79fb\u52a8 3 \u683c\u201d\u7684\u4f8b\u5b50\u4e2d\uff0c\u4e00\u5171\u6709 4 \u4e2a\u9ecf\u9ecf\u7684\u65b9\u683c\uff0c\u5176\u4e2d\u5305\u62ec\u8d77\u59cb\u65b9\u683c\u3002\", \"Understanding the Problem\": \"\u7406\u89e3\u9898\u76ee\", \"Every time the snail moves one square, we check whether the new square was already slimy.\": \"\u6bcf\u5f53\u8717\u725b\u79fb\u52a8\u4e00\u683c\uff0c\u6211\u4eec\u90fd\u68c0\u67e5\u5b83\u5230\u8fbe\u7684\u65b0\u65b9\u683c\u662f\u5426\u5df2\u7ecf\u662f\u9ecf\u9ecf\u7684\u3002\", \"If it steps onto a square it has never touched before, nothing is added to the answer.\": \"\u5982\u679c\u5b83\u8d70\u5230\u4e00\u4e2a\u4ece\u672a\u78b0\u8fc7\u7684\u65b9\u683c\uff0c\u7b54\u6848\u4e0d\u589e\u52a0\u3002\", \"If it steps onto a square that is already slimy, the snail has returned to an old square, so we add 1 to the answer.\": \"\u5982\u679c\u5b83\u8d70\u5230\u4e00\u4e2a\u5df2\u7ecf\u9ecf\u9ecf\u7684\u65b9\u683c\uff0c\u8bf4\u660e\u8717\u725b\u56de\u5230\u4e86\u65e7\u65b9\u683c\uff0c\u56e0\u6b64\u7b54\u6848\u52a0 1\u3002\", \"So the problem is really asking: as the snail walks step by step, how many times does it revisit an old square?\": \"\u6240\u4ee5\u8fd9\u9053\u9898\u771f\u6b63\u8981\u95ee\u7684\u662f\uff1a\u8717\u725b\u4e00\u6b65\u4e00\u6b65\u79fb\u52a8\u65f6\uff0c\u6709\u591a\u5c11\u6b21\u91cd\u65b0\u8fdb\u5165\u4e86\u65e7\u65b9\u683c\uff1f\", \"Important Detail Students Often Miss\": \"\u5b66\u751f\u7ecf\u5e38\u5ffd\u7565\u7684\u91cd\u8981\u7ec6\u8282\", \"A movement like S2 does not mean one big jump. It means move 1 square south, then move 1 more square south.\": \"\u50cf S2 \u8fd9\u6837\u7684\u79fb\u52a8\u5e76\u4e0d\u8868\u793a\u4e00\u6b21\u5927\u8df3\u8dc3\u3002\u5b83\u8868\u793a\u5148\u5411\u5357\u79fb\u52a8 1 \u683c\uff0c\u518d\u5411\u5357\u79fb\u52a8 1 \u683c\u3002\", \"A movement like\": \"\u50cf\", \"does not mean one big jump. It means move 1 square south, then move 1 more square south.\": \"\u8fd9\u6837\u7684\u79fb\u52a8\u5e76\u4e0d\u8868\u793a\u4e00\u6b21\u5927\u8df3\u8dc3\u3002\u5b83\u8868\u793a\u5148\u5411\u5357\u79fb\u52a8 1 \u683c\uff0c\u518d\u5411\u5357\u79fb\u52a8 1 \u683c\u3002\", \"You must process movements one square at a time, because the snail could enter an already slimy square in the middle of a longer movement. The movement format is a direction letter followed by a positive integer up to 20.\": \"\u5fc5\u987b\u4e00\u683c\u4e00\u683c\u5904\u7406\u79fb\u52a8\uff0c\u56e0\u4e3a\u8717\u725b\u53ef\u80fd\u5728\u4e00\u6b21\u8f83\u957f\u79fb\u52a8\u7684\u4e2d\u9014\u8fdb\u5165\u5df2\u7ecf\u9ecf\u9ecf\u7684\u65b9\u683c\u3002\u79fb\u52a8\u683c\u5f0f\u662f\u4e00\u4e2a\u65b9\u5411\u5b57\u6bcd\u540e\u63a5\u4e00\u4e2a\u6700\u5927\u4e3a 20 \u7684\u6b63\u6574\u6570\u3002\", \"Core DSA Concepts\": \"\u6838\u5fc3 DSA \u6982\u5ff5\", \"Simulation:\": \"\u6a21\u62df\uff1a\", \"follow the snail exactly as described, updating its position and trail step by step.\": \"\u4e25\u683c\u6309\u7167\u9898\u610f\u8ddf\u968f\u8717\u725b\u79fb\u52a8\uff0c\u9010\u6b65\u66f4\u65b0\u4f4d\u7f6e\u548c\u8def\u5f84\u3002\", \"Hash set \/ visited set:\": \"\u54c8\u5e0c\u96c6\u5408 \/ visited set\uff1a\", \"remember which squares are already slimy using coordinate pairs such as (x, y).\": \"\u7528 (x, y) \u8fd9\u6837\u7684\u5750\u6807\u5bf9\u8bb0\u5f55\u54ea\u4e9b\u65b9\u683c\u5df2\u7ecf\u53d8\u9ecf\u3002\", \"Coordinates on a grid:\": \"\u7f51\u683c\u5750\u6807\uff1a\", \"use x for east\/west and y for north\/south.\": \"\u7528 x \u8868\u793a\u4e1c\u897f\u65b9\u5411\uff0c\u7528 y \u8868\u793a\u5357\u5317\u65b9\u5411\u3002\", \"Unit-step processing:\": \"\u9010\u683c\u5904\u7406\uff1a\", \"break each command into single-square moves before checking whether the square was already visited.\": \"\u628a\u6bcf\u6761\u6307\u4ee4\u62c6\u6210\u4e00\u683c\u4e00\u683c\u7684\u79fb\u52a8\uff0c\u518d\u68c0\u67e5\u8be5\u65b9\u683c\u662f\u5426\u5df2\u7ecf\u8bbf\u95ee\u8fc7\u3002\", \"Coordinate Updates\": \"\u5750\u6807\u66f4\u65b0\", \"North:\": \"\u5317\uff1a\", \"South:\": \"\u5357\uff1a\", \"East:\": \"\u4e1c\uff1a\", \"West:\": \"\u897f\uff1a\", \"Big Idea\": \"\u6838\u5fc3\u601d\u8def\", \"Start from the original square and add it to a visited set. For each movement command, repeat the movement one square at a time. After each single step, check whether the new coordinate is already in the set. If it is, increase the revisit count. Then add the coordinate to the set.\": \"\u4ece\u8d77\u59cb\u65b9\u683c\u5f00\u59cb\uff0c\u5e76\u628a\u5b83\u52a0\u5165 visited set\u3002\u5bf9\u4e8e\u6bcf\u6761\u79fb\u52a8\u6307\u4ee4\uff0c\u90fd\u4e00\u683c\u4e00\u683c\u91cd\u590d\u79fb\u52a8\u3002\u6bcf\u8d70\u4e00\u6b65\u540e\uff0c\u68c0\u67e5\u65b0\u7684\u5750\u6807\u662f\u5426\u5df2\u7ecf\u5728\u96c6\u5408\u4e2d\u3002\u5982\u679c\u5728\uff0c\u5c31\u628a\u91cd\u590d\u8fdb\u5165\u6b21\u6570\u52a0 1\u3002\u7136\u540e\u628a\u8be5\u5750\u6807\u52a0\u5165\u96c6\u5408\u3002\", \"Treating \": \"\u628a \", \"Treating\": \"\u628a\", \" as one jump:\": \" \u5f53\u4f5c\u4e00\u6b21\u8df3\u8dc3\uff1a\", \"as one jump:\": \"\u5f53\u4f5c\u4e00\u6b21\u8df3\u8dc3\uff1a\", \"that is wrong. The snail passes through 20 squares one by one, and any of those may already be slimy.\": \"\u8fd9\u662f\u9519\u8bef\u7684\u3002\u8717\u725b\u4f1a\u4e00\u683c\u4e00\u683c\u7ecf\u8fc7 20 \u4e2a\u65b9\u683c\uff0c\u5176\u4e2d\u4efb\u610f\u4e00\u4e2a\u90fd\u53ef\u80fd\u5df2\u7ecf\u662f\u9ecf\u9ecf\u7684\u3002\", \"Forgetting the starting square:\": \"\u5fd8\u8bb0\u8d77\u59cb\u65b9\u683c\uff1a\", \"the starting square must already be in visited, otherwise returning to start will not be counted correctly.\": \"\u8d77\u59cb\u65b9\u683c\u5fc5\u987b\u4e00\u5f00\u59cb\u5c31\u5728 visited \u4e2d\uff0c\u5426\u5219\u56de\u5230\u8d77\u70b9\u65f6\u65e0\u6cd5\u6b63\u786e\u8ba1\u6570\u3002\", \"the starting square must already be in\": \"\u8d77\u59cb\u65b9\u683c\u5fc5\u987b\u4e00\u5f00\u59cb\u5c31\u5728\", \", otherwise returning to start will not be counted correctly.\": \"\uff0c\u5426\u5219\u56de\u5230\u8d77\u70b9\u65f6\u65e0\u6cd5\u6b63\u786e\u8ba1\u6570\u3002\", \"Counting distinct repeated squares instead of total re-entries:\": \"\u7edf\u8ba1\u4e0d\u540c\u7684\u91cd\u590d\u65b9\u683c\uff0c\u800c\u4e0d\u662f\u603b\u91cd\u5165\u6b21\u6570\uff1a\", \"the output is how many times the snail enters a slimy square, not how many slimy squares are revisited. A single square can be entered many times and should be counted many times. The statement explicitly notes that one slimy square can be entered multiple times.\": \"\u8f93\u51fa\u7684\u662f\u8717\u725b\u8fdb\u5165\u9ecf\u9ecf\u65b9\u683c\u7684\u6b21\u6570\uff0c\u800c\u4e0d\u662f\u6709\u591a\u5c11\u4e2a\u9ecf\u9ecf\u65b9\u683c\u88ab\u91cd\u65b0\u8bbf\u95ee\u3002\u4e00\u4e2a\u65b9\u683c\u53ef\u4ee5\u88ab\u8fdb\u5165\u591a\u6b21\uff0c\u4e5f\u5e94\u8be5\u88ab\u8ba1\u6570\u591a\u6b21\u3002\u9898\u76ee\u4e5f\u660e\u786e\u8bf4\u660e\uff0c\u4e00\u4e2a\u9ecf\u9ecf\u7684\u65b9\u683c\u53ef\u4ee5\u88ab\u8fdb\u5165\u591a\u6b21\u3002\", \"Using a list instead of a set:\": \"\u4f7f\u7528 list \u800c\u4e0d\u662f set\uff1a\", \"a set is much faster for checking whether a coordinate has been seen before.\": \"\u68c0\u67e5\u67d0\u4e2a\u5750\u6807\u662f\u5426\u51fa\u73b0\u8fc7\u65f6\uff0cset \u4f1a\u5feb\u5f97\u591a\u3002\", \"CCC 2026 J5\/S2 - Beams of Light Solution & Analysis\": \"CCC 2026 J5\/S2 - Beams of Light \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2026 J5\/S2 \u2013 Beams of Light Solution & Analysis\": \"CCC 2026 J5\/S2 - Beams of Light \u89e3\u9898\u4e0e\u5206\u6790\", \"Use interval coverage, a difference array, and prefix sums to answer illumination queries efficiently.\": \"\u4f7f\u7528\u533a\u95f4\u8986\u76d6\u3001\u5dee\u5206\u6570\u7ec4\u548c\u524d\u7f00\u548c\uff0c\u9ad8\u6548\u56de\u7b54\u505c\u8f66\u4f4d\u662f\u5426\u88ab\u7167\u4eae\u7684\u67e5\u8be2\u3002\", \"You have parking spots numbered 1 to N. Each light is hung above one spot P and shines from P - S to P + S, clipped to stay inside 1..N. Then you get Q questions, each asking whether a particular parking spot is lit by at least one light. Since N, L, and Q can each be as large as 500,000, checking every light for every question would be too slow.\": \"\u505c\u8f66\u4f4d\u7f16\u53f7\u4e3a 1 \u5230 N\u3002\u6bcf\u76cf\u706f\u6302\u5728\u4f4d\u7f6e P \u4e0a\u65b9\uff0c\u7167\u4eae\u4ece P - S \u5230 P + S \u7684\u8303\u56f4\uff0c\u5e76\u88ab\u9650\u5236\u5728 1..N \u5185\u3002\u63a5\u4e0b\u6765\u6709 Q \u4e2a\u95ee\u9898\uff0c\u6bcf\u4e2a\u95ee\u9898\u8be2\u95ee\u67d0\u4e2a\u505c\u8f66\u4f4d\u662f\u5426\u81f3\u5c11\u88ab\u4e00\u76cf\u706f\u7167\u4eae\u3002\u7531\u4e8e N\u3001L \u548c Q \u90fd\u53ef\u80fd\u8fbe\u5230 500,000\uff0c\u5982\u679c\u5bf9\u6bcf\u4e2a\u67e5\u8be2\u90fd\u68c0\u67e5\u6bcf\u4e00\u76cf\u706f\uff0c\u4f1a\u975e\u5e38\u6162\u3002\", \"Key Concepts\": \"\u6838\u5fc3\u6982\u5ff5\", \"Interval coverage\": \"\u533a\u95f4\u8986\u76d6\", \"Difference array\": \"\u5dee\u5206\u6570\u7ec4\", \"Prefix sums\": \"\u524d\u7f00\u548c\", \"Preprocessing for O(1) queries\": \"\u9884\u5904\u7406\u540e O(1) \u56de\u7b54\u67e5\u8be2\", \"Thinking Process\": \"\u601d\u8003\u8fc7\u7a0b\", \"Each light covers one continuous interval. For a light at position P with spread S, compute left = max(1, P - S) and right = min(N, P + S). Instead of marking every covered spot, mark only the boundary changes: add 1 at left and subtract 1 just after right. A prefix sum then tells us how many lights cover each parking spot. If the coverage at a queried spot is greater than 0, print Y; otherwise, print N.\": \"\u6bcf\u76cf\u706f\u8986\u76d6\u4e00\u4e2a\u8fde\u7eed\u533a\u95f4\u3002\u5bf9\u4e8e\u4f4d\u7f6e\u4e3a P\u3001\u6269\u6563\u8303\u56f4\u4e3a S \u7684\u706f\uff0c\u8ba1\u7b97 left = max(1, P - S)\uff0cright = min(N, P + S)\u3002\u4e0d\u8981\u9010\u4e2a\u6807\u8bb0\u6240\u6709\u88ab\u7167\u4eae\u7684\u4f4d\u7f6e\uff0c\u800c\u53ea\u8bb0\u5f55\u8fb9\u754c\u53d8\u5316\uff1a\u5728 left \u5904\u52a0 1\uff0c\u5728 right \u4e4b\u540e\u51cf 1\u3002\u4e4b\u540e\u901a\u8fc7\u524d\u7f00\u548c\u5373\u53ef\u77e5\u9053\u6bcf\u4e2a\u505c\u8f66\u4f4d\u88ab\u591a\u5c11\u76cf\u706f\u8986\u76d6\u3002\u5982\u679c\u67e5\u8be2\u4f4d\u7f6e\u7684\u8986\u76d6\u6570\u5927\u4e8e 0\uff0c\u8f93\u51fa Y\uff1b\u5426\u5219\u8f93\u51fa N\u3002\", \"Each light covers one continuous interval. For a light at position P with spread S, compute left = max(1, P \u2013 S) and right = min(N, P + S). Instead of marking every covered spot, mark only the boundary changes: add 1 at left and subtract 1 just after right. A prefix sum then tells us how many lights cover each parking spot. If the coverage at a queried spot is greater than 0, print Y; otherwise, print N.\": \"\u6bcf\u76cf\u706f\u8986\u76d6\u4e00\u4e2a\u8fde\u7eed\u533a\u95f4\u3002\u5bf9\u4e8e\u4f4d\u7f6e\u4e3a P\u3001\u6269\u6563\u8303\u56f4\u4e3a S \u7684\u706f\uff0c\u8ba1\u7b97 left = max(1, P - S)\uff0cright = min(N, P + S)\u3002\u4e0d\u8981\u9010\u4e2a\u6807\u8bb0\u6240\u6709\u88ab\u7167\u4eae\u7684\u4f4d\u7f6e\uff0c\u800c\u53ea\u8bb0\u5f55\u8fb9\u754c\u53d8\u5316\uff1a\u5728 left \u5904\u52a0 1\uff0c\u5728 right \u4e4b\u540e\u51cf 1\u3002\u4e4b\u540e\u901a\u8fc7\u524d\u7f00\u548c\u5373\u53ef\u77e5\u9053\u6bcf\u4e2a\u505c\u8f66\u4f4d\u88ab\u591a\u5c11\u76cf\u706f\u8986\u76d6\u3002\u5982\u679c\u67e5\u8be2\u4f4d\u7f6e\u7684\u8986\u76d6\u6570\u5927\u4e8e 0\uff0c\u8f93\u51fa Y\uff1b\u5426\u5219\u8f93\u51fa N\u3002\", \"Solution #1: Brute Force\": \"\u89e3\u6cd5\u4e00\uff1a\u66b4\u529b\u6807\u8bb0\", \"The most direct idea is to mark every parking spot that each light covers. This is simple and useful for understanding the problem, but it can be too slow when N, L, and Q are large.\": \"\u6700\u76f4\u63a5\u7684\u60f3\u6cd5\u662f\u628a\u6bcf\u76cf\u706f\u8986\u76d6\u7684\u6240\u6709\u505c\u8f66\u4f4d\u9010\u4e2a\u6807\u8bb0\u51fa\u6765\u3002\u8fd9\u4e2a\u65b9\u6cd5\u7b80\u5355\uff0c\u4e5f\u6709\u52a9\u4e8e\u7406\u89e3\u9898\u610f\uff0c\u4f46\u5f53 N\u3001L \u548c Q \u5f88\u5927\u65f6\u4f1a\u592a\u6162\u3002\", \"Solution #2: Difference Array\": \"\u89e3\u6cd5\u4e8c\uff1a\u5dee\u5206\u6570\u7ec4\", \"The optimized solution marks only the start and end boundary changes for each light. After one prefix sum pass, every query can be answered in O(1).\": \"\u4f18\u5316\u65b9\u6cd5\u53ea\u8bb0\u5f55\u6bcf\u76cf\u706f\u8986\u76d6\u533a\u95f4\u7684\u8d77\u70b9\u548c\u7ec8\u70b9\u8fb9\u754c\u53d8\u5316\u3002\u5b8c\u6210\u4e00\u6b21\u524d\u7f00\u548c\u540e\uff0c\u6bcf\u4e2a\u67e5\u8be2\u90fd\u53ef\u4ee5 O(1) \u56de\u7b54\u3002\", \"Python Solution\": \"Python \u89e3\u6cd5\", \"C++ Solution\": \"C++ \u89e3\u6cd5\", \"Complexity Analysis\": \"\u590d\u6742\u5ea6\u5206\u6790\", \"Building the difference array takes O(L). Computing the prefix sums takes O(N). Answering all queries takes O(Q). The total time complexity is O(N + L + Q), and the memory usage is O(N).\": \"\u6784\u5efa\u5dee\u5206\u6570\u7ec4\u9700\u8981 O(L)\uff0c\u8ba1\u7b97\u524d\u7f00\u548c\u9700\u8981 O(N)\uff0c\u56de\u7b54\u6240\u6709\u67e5\u8be2\u9700\u8981 O(Q)\u3002\u603b\u65f6\u95f4\u590d\u6742\u5ea6\u4e3a O(N + L + Q)\uff0c\u7a7a\u95f4\u590d\u6742\u5ea6\u4e3a O(N)\u3002\", \"Common Mistakes\": \"\u5e38\u89c1\u9519\u8bef\", \"Marking every spot covered by every light, which can be too slow for large spreads.\": \"\u9010\u4e2a\u6807\u8bb0\u6bcf\u76cf\u706f\u8986\u76d6\u7684\u6240\u6709\u4f4d\u7f6e\uff0c\u5728\u8303\u56f4\u5f88\u5927\u65f6\u4f1a\u592a\u6162\u3002\", \"Forgetting to clip intervals to the valid range 1..N.\": \"\u5fd8\u8bb0\u628a\u533a\u95f4\u9650\u5236\u5728\u6709\u6548\u8303\u56f4 1..N \u5185\u3002\", \"Forgetting the -1 update at right + 1.\": \"\u5fd8\u8bb0\u5728 right + 1 \u5904\u505a -1 \u66f4\u65b0\u3002\", \"Using nested loops over lights and queries.\": \"\u5bf9\u706f\u548c\u67e5\u8be2\u4f7f\u7528\u5d4c\u5957\u5faa\u73af\u3002\", \"Learning Outcomes\": \"\u5b66\u4e60\u76ee\u6807\", \"Recognize interval coverage problems.\": \"\u8bc6\u522b\u533a\u95f4\u8986\u76d6\u7c7b\u95ee\u9898\u3002\", \"Use a difference array to apply many range updates efficiently.\": \"\u4f7f\u7528\u5dee\u5206\u6570\u7ec4\u9ad8\u6548\u5904\u7406\u5927\u91cf\u533a\u95f4\u66f4\u65b0\u3002\", \"Use prefix sums to convert boundary changes into actual coverage.\": \"\u4f7f\u7528\u524d\u7f00\u548c\u628a\u8fb9\u754c\u53d8\u5316\u8f6c\u6362\u4e3a\u5b9e\u9645\u8986\u76d6\u60c5\u51b5\u3002\", \"Preprocess once so each query can be answered in O(1).\": \"\u901a\u8fc7\u4e00\u6b21\u9884\u5904\u7406\uff0c\u8ba9\u6bcf\u4e2a\u67e5\u8be2\u90fd\u80fd O(1) \u56de\u7b54\u3002\", \"Read Practice Review\": \"\u9605\u8bfb \u7ec3\u4e60 \u590d\u76d8\", \"Read\\nPractice\\nReview\": \"\u9605\u8bfb\\n\u7ec3\u4e60\\n\u590d\u76d8\", \"Part of the Accel Thinking content library for programming, AI literacy, and future skills.\": \"\u52a0\u901f\u5ea6\u601d\u7ef4\u5185\u5bb9\u5e93\u7684\u4e00\u90e8\u5206\uff0c\u9762\u5411\u7f16\u7a0b\u3001AI\u7d20\u517b\u4e0e\u672a\u6765\u6280\u80fd\u5b66\u4e60\u3002\", \"By Berny\": \"\u4f5c\u8005\uff1aBerny\", \"Back to Resources\": \"\u8fd4\u56de\u8d44\u6e90\u6587\u7ae0\", \"Open Channel\": \"\u6253\u5f00\u9891\u9053\", \"LATEST\": \"\u6700\u65b0\", \"Read Full Article\": \"\u9605\u8bfb\u5168\u6587\", \"Python Learning Notes\": \"Python \u5b66\u4e60\u7b14\u8bb0\", \"CP Weekly Challenges\": \"CP \u6bcf\u5468\u6311\u6218\", \"AI Literacy Articles\": \"AI \u7d20\u517b\u6587\u7ae0\", \"Resources for Programming, AI, and Future Skills\": \"\u7f16\u7a0b\u3001AI\u4e0e\u672a\u6765\u6280\u80fd\u8d44\u6e90\", \"A long-term content hub for parents, students, educators, and teams who want practical technology learning guidance.\": \"\u4e00\u4e2a\u957f\u671f\u5185\u5bb9\u5165\u53e3\uff0c\u670d\u52a1\u4e8e\u5e0c\u671b\u83b7\u5f97\u5b9e\u7528\u6280\u672f\u5b66\u4e60\u6307\u5bfc\u7684\u5bb6\u957f\u3001\u5b66\u751f\u3001\u6559\u80b2\u8005\u548c\u56e2\u961f\u3002\", \"Python CCC AI Literacy\": \"Python CCC AI\u7d20\u517b\", \"Start with focused learning notes today. Over time, this becomes the public library behind Accel Thinking.\": \"\u5148\u4ece\u805a\u7126\u7684\u5b66\u4e60\u7b14\u8bb0\u5f00\u59cb\uff0c\u9010\u6b65\u6c89\u6dc0\u4e3a\u52a0\u901f\u5ea6\u601d\u7ef4\u7684\u516c\u5f00\u5185\u5bb9\u5e93\u3002\", \"Explore by Topic\": \"\u6309\u4e3b\u9898\u6d4f\u89c8\", \"Choose a channel to follow weekly articles, learning notes, and practical guidance.\": \"\u9009\u62e9\u4e00\u4e2a\u9891\u9053\uff0c\u6301\u7eed\u9605\u8bfb\u6bcf\u5468\u6587\u7ae0\u3001\u5b66\u4e60\u7b14\u8bb0\u4e0e\u5b9e\u8df5\u6307\u5357\u3002\", \"Practical Python concepts, coding habits, project notes, debugging guidance, and student-friendly explanations.\": \"\u5b9e\u7528 Python \u6982\u5ff5\u3001\u7f16\u7801\u4e60\u60ef\u3001\u9879\u76ee\u7b14\u8bb0\u3001\u8c03\u8bd5\u65b9\u6cd5\uff0c\u4ee5\u53ca\u9002\u5408\u5b66\u751f\u9605\u8bfb\u7684\u89e3\u91ca\u3002\", \"CCC-style problem explanations, implementation notes, common mistakes, and weekly practice challenges.\": \"CCC \u98ce\u683c\u9898\u76ee\u89e3\u6790\u3001\u5b9e\u73b0\u8bf4\u660e\u3001\u5e38\u89c1\u9519\u8bef\u4e0e\u6bcf\u5468\u7ec3\u4e60\u6311\u6218\u3002\", \"Student and parent guidance on using AI tools responsibly while protecting real thinking ability.\": \"\u9762\u5411\u5b66\u751f\u548c\u5bb6\u957f\u7684 AI \u4f7f\u7528\u6307\u5bfc\uff0c\u5f3a\u8c03\u8d1f\u8d23\u4efb\u4f7f\u7528\uff0c\u540c\u65f6\u4fdd\u62a4\u771f\u5b9e\u601d\u8003\u80fd\u529b\u3002\", \"Python Syntax Basics: Print, Variables, and Types\": \"Python \u8bed\u6cd5\u57fa\u7840\uff1aprint\u3001\u53d8\u91cf\u4e0e\u7c7b\u578b\", \"Why Learn Python? Start with Readability, Not Syntax\": \"\u4e3a\u4ec0\u4e48\u5b66\u4e60 Python\uff1f\u4ece\u53ef\u8bfb\u6027\u5f00\u59cb\uff0c\u800c\u4e0d\u662f\u4ece\u8bed\u6cd5\u5f00\u59cb\", \"Using Codex to Support Python JamHack Competition Preparation\": \"\u7528 Codex \u52a9\u529b Python JamHack \u7ade\u8d5b\u51c6\u5907\", \"CCC 2024 J5 - Harvest Waterloo Solution & Analysis\": \"CCC 2024 J5 - Harvest Waterloo \u89e3\u9898\u4e0e\u5206\u6790\", \"CCC 2024 J5 \u2013 Harvest Waterloo Solution & Analysis\": \"CCC 2024 J5 - Harvest Waterloo \u89e3\u9898\u4e0e\u5206\u6790\", \"A beginner-friendly Python note on print(), comments, variable naming, basic types, and converting input before doing math.\": \"\u4e00\u7bc7\u9002\u5408\u521d\u5b66\u8005\u7684 Python \u7b14\u8bb0\uff0c\u4ecb\u7ecd print()\u3001\u6ce8\u91ca\u3001\u53d8\u91cf\u547d\u540d\u3001\u57fa\u7840\u7c7b\u578b\uff0c\u4ee5\u53ca\u505a\u6570\u5b66\u8fd0\u7b97\u524d\u5982\u4f55\u8f6c\u6362\u8f93\u5165\u3002\", \"A short Python Learning Note based on Phase I materials: why Python is a good first language, and why beginners should start with readability rather than memorizing syntax.\": \"\u4e00\u7bc7\u57fa\u4e8e Phase I \u8bb2\u4e49\u7684 Python \u5b66\u4e60\u7b14\u8bb0\uff1a\u4e3a\u4ec0\u4e48 Python \u9002\u5408\u4f5c\u4e3a\u7b2c\u4e00\u95e8\u8bed\u8a00\uff0c\u4ee5\u53ca\u521d\u5b66\u8005\u4e3a\u4ec0\u4e48\u5e94\u5148\u7406\u89e3\u53ef\u8bfb\u6027\uff0c\u800c\u4e0d\u662f\u6025\u7740\u80cc\u8bed\u6cd5\u3002\", \"A practical look at how Codex can help students prepare for Python JamHack without replacing their own thinking, debugging, and teamwork.\": \"\u4e00\u7bc7\u5b9e\u8df5\u578b\u6587\u7ae0\uff0c\u8ba8\u8bba\u5b66\u751f\u5982\u4f55\u4f7f\u7528 Codex \u51c6\u5907 Python JamHack\uff0c\u540c\u65f6\u4e0d\u66ff\u4ee3\u81ea\u5df1\u7684\u601d\u8003\u3001\u8c03\u8bd5\u548c\u56e2\u961f\u534f\u4f5c\u3002\", \"After students understand why Python is a good first language, the next step is learning how to read a small Python program without feeling lost. Syntax is not just punctuation. It is the visible structure that tells us what the program is doing.\": \"\u5f53\u5b66\u751f\u7406\u89e3\u4e86\u4e3a\u4ec0\u4e48 Python \u9002\u5408\u4f5c\u4e3a\u7b2c\u4e00\u95e8\u8bed\u8a00\u4e4b\u540e\uff0c\u4e0b\u4e00\u6b65\u5c31\u662f\u5b66\u4f1a\u9605\u8bfb\u4e00\u4e2a\u5c0f\u578b Python \u7a0b\u5e8f\u800c\u4e0d\u8ff7\u5931\u3002\u8bed\u6cd5\u4e0d\u53ea\u662f\u6807\u70b9\u548c\u683c\u5f0f\uff0c\u5b83\u662f\u7a0b\u5e8f\u7ed3\u6784\u7684\u5916\u5728\u8868\u73b0\uff0c\u544a\u8bc9\u6211\u4eec\u7a0b\u5e8f\u6b63\u5728\u505a\u4ec0\u4e48\u3002\", \"Start with print()\": \"\u4ece print() \u5f00\u59cb\", \"The first useful Python command is usually print(). It sends a value to the screen so we can see what the program is doing.\": \"\u7b2c\u4e00\u4e2a\u771f\u6b63\u6709\u7528\u7684 Python \u547d\u4ee4\u901a\u5e38\u662f print()\u3002\u5b83\u628a\u503c\u8f93\u51fa\u5230\u5c4f\u5e55\u4e0a\uff0c\u8ba9\u6211\u4eec\u770b\u5230\u7a0b\u5e8f\u6b63\u5728\u505a\u4ec0\u4e48\u3002\", \"For beginners, print() is more than output. It is also a simple debugging tool. When a program feels confusing, printing intermediate values can help students check what is happening step by step.\": \"\u5bf9\u521d\u5b66\u8005\u6765\u8bf4\uff0cprint() \u4e0d\u53ea\u662f\u8f93\u51fa\u5de5\u5177\uff0c\u4e5f\u662f\u6700\u7b80\u5355\u7684\u8c03\u8bd5\u5de5\u5177\u3002\u5f53\u7a0b\u5e8f\u8ba9\u4eba\u56f0\u60d1\u65f6\uff0c\u6253\u5370\u4e2d\u95f4\u503c\u53ef\u4ee5\u5e2e\u52a9\u5b66\u751f\u4e00\u6b65\u4e00\u6b65\u68c0\u67e5\u53d1\u751f\u4e86\u4ec0\u4e48\u3002\", \"Use Comments to Explain Your Thinking\": \"\u7528\u6ce8\u91ca\u89e3\u91ca\u4f60\u7684\u601d\u8def\", \"Python ignores anything after # on the same line. That makes comments useful for explaining intent.\": \"Python \u4f1a\u5ffd\u7565\u540c\u4e00\u884c\u4e2d # \u540e\u9762\u7684\u5185\u5bb9\u3002\u56e0\u6b64\uff0c\u6ce8\u91ca\u5f88\u9002\u5408\u7528\u6765\u89e3\u91ca\u4ee3\u7801\u610f\u56fe\u3002\", \"A good comment should explain why the code exists, not simply repeat what the code already says.\": \"\u597d\u7684\u6ce8\u91ca\u5e94\u8be5\u89e3\u91ca\u4ee3\u7801\u4e3a\u4ec0\u4e48\u5b58\u5728\uff0c\u800c\u4e0d\u662f\u7b80\u5355\u91cd\u590d\u4ee3\u7801\u672c\u8eab\u5df2\u7ecf\u8868\u8fbe\u7684\u5185\u5bb9\u3002\", \"Variables Give Names to Ideas\": \"\u53d8\u91cf\u4e3a\u60f3\u6cd5\u547d\u540d\", \"A variable stores a value so we can reuse it later. Clear variable names make programs easier to read.\": \"\u53d8\u91cf\u7528\u6765\u4fdd\u5b58\u4e00\u4e2a\u503c\uff0c\u65b9\u4fbf\u4e4b\u540e\u91cd\u590d\u4f7f\u7528\u3002\u6e05\u6670\u7684\u53d8\u91cf\u540d\u4f1a\u8ba9\u7a0b\u5e8f\u66f4\u5bb9\u6613\u9605\u8bfb\u3002\", \"Python variable names are case-sensitive, so score and Score are different names. In student code, it is better to use lowercase words separated by underscores, also called snake case.\": \"Python \u7684\u53d8\u91cf\u540d\u533a\u5206\u5927\u5c0f\u5199\uff0c\u6240\u4ee5 score \u548c Score \u662f\u4e24\u4e2a\u4e0d\u540c\u7684\u540d\u5b57\u3002\u5728\u5b66\u751f\u4ee3\u7801\u4e2d\uff0c\u66f4\u63a8\u8350\u4f7f\u7528\u5c0f\u5199\u5355\u8bcd\u5e76\u7528\u4e0b\u5212\u7ebf\u8fde\u63a5\uff0c\u4e5f\u5c31\u662f snake case\u3002\", \"Python Infers Types\": \"Python \u4f1a\u63a8\u65ad\u7c7b\u578b\", \"Python is dynamically typed. Students do not need to declare a variable type before assigning a value.\": \"Python \u662f\u52a8\u6001\u7c7b\u578b\u8bed\u8a00\u3002\u5b66\u751f\u5728\u7ed9\u53d8\u91cf\u8d4b\u503c\u4e4b\u524d\uff0c\u4e0d\u9700\u8981\u5148\u58f0\u660e\u53d8\u91cf\u7c7b\u578b\u3002\", \"This flexibility is helpful, but it also means students should pay attention to what kind of value each variable contains.\": \"\u8fd9\u79cd\u7075\u6d3b\u6027\u5f88\u6709\u5e2e\u52a9\uff0c\u4f46\u4e5f\u610f\u5473\u7740\u5b66\u751f\u9700\u8981\u7559\u610f\u6bcf\u4e2a\u53d8\u91cf\u91cc\u4fdd\u5b58\u7684\u662f\u4ec0\u4e48\u7c7b\u578b\u7684\u503c\u3002\", \"Convert Input Before Doing Math\": \"\u505a\u6570\u5b66\u8fd0\u7b97\u524d\u5148\u8f6c\u6362\u8f93\u5165\", \"User input arrives as text. If we want to do arithmetic, we usually need to convert it with int() or float().\": \"\u7528\u6237\u8f93\u5165\u8fdb\u6765\u65f6\u662f\u6587\u672c\u3002\u5982\u679c\u8981\u505a\u7b97\u672f\u8fd0\u7b97\uff0c\u901a\u5e38\u9700\u8981\u7528 int() \u6216 float() \u5148\u8f6c\u6362\u7c7b\u578b\u3002\", \"This is one of the most common early Python mistakes: trying to add input strings as if they were numbers.\": \"\u8fd9\u662f Python \u521d\u5b66\u9636\u6bb5\u6700\u5e38\u89c1\u7684\u9519\u8bef\u4e4b\u4e00\uff1a\u628a\u8f93\u5165\u5b57\u7b26\u4e32\u5f53\u6210\u6570\u5b57\u76f4\u63a5\u76f8\u52a0\u3002\", \"Practice Prompt\": \"\u7ec3\u4e60\u63d0\u793a\", \"Write a short program that:\": \"\u5199\u4e00\u4e2a\u5c0f\u7a0b\u5e8f\uff0c\u5b8c\u6210\u4ee5\u4e0b\u4efb\u52a1\uff1a\", \"Reads a student's name.\": \"\u8bfb\u53d6\u4e00\u540d\u5b66\u751f\u7684\u59d3\u540d\u3002\", \"Reads two quiz scores.\": \"\u8bfb\u53d6\u4e24\u6b21\u5c0f\u6d4b\u6210\u7ee9\u3002\", \"Converts the scores to integers.\": \"\u628a\u6210\u7ee9\u8f6c\u6362\u4e3a\u6574\u6570\u3002\", \"Prints a sentence with the student's average score.\": \"\u8f93\u51fa\u4e00\u53e5\u8bdd\uff0c\u5305\u542b\u8fd9\u540d\u5b66\u751f\u7684\u5e73\u5747\u5206\u3002\", \"Key Takeaway\": \"\u5173\u952e\u6536\u83b7\", \"Beginner syntax should be learned through reading and small experiments. Focus first on a few reliable habits: print values, name variables clearly, check types when confused, and convert input before doing math.\": \"\u521d\u5b66\u8bed\u6cd5\u5e94\u8be5\u901a\u8fc7\u9605\u8bfb\u548c\u5c0f\u5b9e\u9a8c\u6765\u638c\u63e1\u3002\u5148\u517b\u6210\u51e0\u4e2a\u53ef\u9760\u4e60\u60ef\uff1a\u6253\u5370\u503c\u3001\u6e05\u6670\u547d\u540d\u53d8\u91cf\u3001\u56f0\u60d1\u65f6\u68c0\u67e5\u7c7b\u578b\u3001\u505a\u6570\u5b66\u8fd0\u7b97\u524d\u8f6c\u6362\u8f93\u5165\u3002\", \"Many students start learning Python by trying to memorize syntax: where to put parentheses, how to write a loop, or which function name to use. Syntax matters, but it is not the best starting point.\": \"\u5f88\u591a\u5b66\u751f\u521a\u5f00\u59cb\u5b66 Python \u65f6\uff0c\u4f1a\u6025\u7740\u80cc\u8bed\u6cd5\uff1a\u62ec\u53f7\u653e\u5728\u54ea\u91cc\u3001\u5faa\u73af\u600e\u4e48\u5199\u3001\u51fd\u6570\u540d\u8be5\u7528\u54ea\u4e2a\u3002\u8bed\u6cd5\u5f53\u7136\u91cd\u8981\uff0c\u4f46\u5b83\u4e0d\u662f\u6700\u597d\u7684\u8d77\u70b9\u3002\", \"A better first question is: what kind of thinking does Python encourage?\": \"\u66f4\u597d\u7684\u7b2c\u4e00\u4e2a\u95ee\u9898\u662f\uff1aPython \u9f13\u52b1\u6211\u4eec\u5f62\u6210\u4ec0\u4e48\u6837\u7684\u601d\u8003\u65b9\u5f0f\uff1f\", \"Python Is Friendly, But Not Because It Is \\\"Easy\\\"\": \"Python \u5f88\u53cb\u597d\uff0c\u4f46\u4e0d\u7b49\u4e8e\u201c\u5f88\u7b80\u5355\u201d\", \"People often say Python is easy. That can be misleading. Programming is still hard because students must learn how to break problems down, test ideas, debug mistakes, and explain logic clearly.\": \"\u4eba\u4eec\u5e38\u8bf4 Python \u5f88\u7b80\u5355\uff0c\u8fd9\u79cd\u8bf4\u6cd5\u53ef\u80fd\u4f1a\u8bef\u5bfc\u5b66\u751f\u3002\u7f16\u7a0b\u4ecd\u7136\u6709\u96be\u5ea6\uff0c\u56e0\u4e3a\u5b66\u751f\u9700\u8981\u5b66\u4e60\u5982\u4f55\u62c6\u89e3\u95ee\u9898\u3001\u6d4b\u8bd5\u60f3\u6cd5\u3001\u8c03\u8bd5\u9519\u8bef\uff0c\u5e76\u6e05\u695a\u89e3\u91ca\u903b\u8f91\u3002\", \"Python feels friendly because it removes some unnecessary visual noise. A simple program can look close to plain English:\": \"Python \u4e4b\u6240\u4ee5\u663e\u5f97\u53cb\u597d\uff0c\u662f\u56e0\u4e3a\u5b83\u51cf\u5c11\u4e86\u4e00\u4e9b\u4e0d\u5fc5\u8981\u7684\u89c6\u89c9\u566a\u97f3\u3002\u4e00\u4e2a\u7b80\u5355\u7a0b\u5e8f\u770b\u8d77\u6765\u53ef\u4ee5\u63a5\u8fd1\u65e5\u5e38\u82f1\u8bed\uff1a\", \"This allows beginners to focus less on ceremony and more on the core idea: giving precise instructions to a computer.\": \"\u8fd9\u8ba9\u521d\u5b66\u8005\u53ef\u4ee5\u5c11\u5173\u6ce8\u5f62\u5f0f\uff0c\u591a\u5173\u6ce8\u6838\u5fc3\uff1a\u5982\u4f55\u7ed9\u8ba1\u7b97\u673a\u660e\u786e\u3001\u7cbe\u786e\u7684\u6307\u4ee4\u3002\", \"Readability Counts\": \"\u53ef\u8bfb\u6027\u5f88\u91cd\u8981\", \"One of the most important ideas in Python is readability. Code is not only written for the computer. It is also written for people: classmates, teachers, teammates, and your future self.\": \"Python \u4e2d\u6700\u91cd\u8981\u7684\u7406\u5ff5\u4e4b\u4e00\u662f\u53ef\u8bfb\u6027\u3002\u4ee3\u7801\u4e0d\u53ea\u662f\u5199\u7ed9\u8ba1\u7b97\u673a\u770b\u7684\uff0c\u4e5f\u662f\u5199\u7ed9\u4eba\u770b\u7684\uff1a\u540c\u5b66\u3001\u8001\u5e08\u3001\u961f\u53cb\uff0c\u4ee5\u53ca\u672a\u6765\u7684\u81ea\u5df1\u3002\", \"For students, this means a good Python program should be easy to follow. Variable names should be meaningful. Steps should be organized. The logic should be visible.\": \"\u5bf9\u5b66\u751f\u6765\u8bf4\uff0c\u4e00\u4e2a\u597d\u7684 Python \u7a0b\u5e8f\u5e94\u8be5\u5bb9\u6613\u8ddf\u4e0a\u3002\u53d8\u91cf\u540d\u8981\u6709\u610f\u4e49\uff0c\u6b65\u9aa4\u8981\u6709\u7ec4\u7ec7\uff0c\u903b\u8f91\u8981\u770b\u5f97\u89c1\u3002\", \"This is better for learning than trying to make code short, clever, or mysterious.\": \"\u8fd9\u6bd4\u4e00\u5f00\u59cb\u5c31\u8ffd\u6c42\u4ee3\u7801\u77ed\u3001\u5de7\u5999\u6216\u96be\u61c2\u66f4\u9002\u5408\u5b66\u4e60\u3002\", \"Do Not Start by Memorizing Every Detail\": \"\u4e0d\u8981\u4ece\u80cc\u6240\u6709\u7ec6\u8282\u5f00\u59cb\", \"When learning a first programming language, students sometimes feel they must memorize everything before writing code. That is not how programmers actually work.\": \"\u5b66\u4e60\u7b2c\u4e00\u95e8\u7f16\u7a0b\u8bed\u8a00\u65f6\uff0c\u5b66\u751f\u6709\u65f6\u4f1a\u89c9\u5f97\u5fc5\u987b\u5148\u80cc\u5b8c\u6240\u6709\u5185\u5bb9\u624d\u80fd\u5199\u4ee3\u7801\u3002\u4f46\u771f\u5b9e\u7684\u7a0b\u5e8f\u5458\u5e76\u4e0d\u662f\u8fd9\u6837\u5de5\u4f5c\u7684\u3002\", \"A more practical approach is:\": \"\u66f4\u5b9e\u9645\u7684\u65b9\u6cd5\u662f\uff1a\", \"Read small examples.\": \"\u9605\u8bfb\u5c0f\u4f8b\u5b50\u3002\", \"Modify them.\": \"\u4fee\u6539\u5b83\u4eec\u3002\", \"Run the code.\": \"\u8fd0\u884c\u4ee3\u7801\u3002\", \"Observe what changes.\": \"\u89c2\u5bdf\u53d1\u751f\u4e86\u4ec0\u4e48\u53d8\u5316\u3002\", \"Write down patterns you see often.\": \"\u8bb0\u5f55\u7ecf\u5e38\u51fa\u73b0\u7684\u6a21\u5f0f\u3002\", \"Syntax becomes familiar through repeated use. The deeper skill is learning how to ask: what is the program trying to do, and how should the steps be organized?\": \"\u8bed\u6cd5\u4f1a\u5728\u53cd\u590d\u4f7f\u7528\u4e2d\u9010\u6e10\u719f\u6089\u3002\u66f4\u6df1\u5c42\u7684\u80fd\u529b\u662f\u5b66\u4f1a\u8ffd\u95ee\uff1a\u8fd9\u4e2a\u7a0b\u5e8f\u60f3\u505a\u4ec0\u4e48\uff1f\u6b65\u9aa4\u5e94\u8be5\u5982\u4f55\u7ec4\u7ec7\uff1f\", \"REPL vs .py File\": \"REPL \u4e0e .py \u6587\u4ef6\", \"Students should know two ways to run Python:\": \"\u5b66\u751f\u5e94\u8be5\u77e5\u9053\u4e24\u79cd\u8fd0\u884c Python \u7684\u65b9\u5f0f\uff1a\", \"1. The REPL\": \"1. REPL\", \"The REPL is an interactive Python prompt. It is useful for quick experiments.\": \"REPL \u662f\u4ea4\u4e92\u5f0f Python \u63d0\u793a\u7b26\uff0c\u9002\u5408\u5feb\u901f\u505a\u5c0f\u5b9e\u9a8c\u3002\", \"Use the REPL when you want to test one small idea.\": \"\u5f53\u4f60\u60f3\u6d4b\u8bd5\u4e00\u4e2a\u5f88\u5c0f\u7684\u60f3\u6cd5\u65f6\uff0c\u53ef\u4ee5\u4f7f\u7528 REPL\u3002\", \"2. A .py File\": \"2. .py \u6587\u4ef6\", \"A Python file is better when the program has multiple steps and should be saved.\": \"\u5f53\u7a0b\u5e8f\u6709\u591a\u4e2a\u6b65\u9aa4\u5e76\u4e14\u9700\u8981\u4fdd\u5b58\u65f6\uff0cPython \u6587\u4ef6\u66f4\u5408\u9002\u3002\", \"Use a .py file when you are building a real program, homework solution, or contest answer.\": \"\u5f53\u4f60\u5728\u5199\u4e00\u4e2a\u771f\u6b63\u7684\u7a0b\u5e8f\u3001\u4f5c\u4e1a\u89e3\u7b54\u6216\u7ade\u8d5b\u7b54\u6848\u65f6\uff0c\u5e94\u8be5\u4f7f\u7528 .py \u6587\u4ef6\u3002\", \"A Good First Learning Habit\": \"\u4e00\u4e2a\u597d\u7684\u5165\u95e8\u5b66\u4e60\u4e60\u60ef\", \"For every new Python concept, students should ask three questions:\": \"\u9047\u5230\u6bcf\u4e2a\u65b0\u7684 Python \u6982\u5ff5\u65f6\uff0c\u5b66\u751f\u90fd\u53ef\u4ee5\u95ee\u4e09\u4e2a\u95ee\u9898\uff1a\", \"What problem does this concept help solve?\": \"\u8fd9\u4e2a\u6982\u5ff5\u5e2e\u52a9\u89e3\u51b3\u4ec0\u4e48\u95ee\u9898\uff1f\", \"What does a simple example look like?\": \"\u4e00\u4e2a\u7b80\u5355\u4f8b\u5b50\u662f\u4ec0\u4e48\u6837\u7684\uff1f\", \"What mistake would be easy to make?\": \"\u6700\u5bb9\u6613\u72af\u7684\u9519\u8bef\u662f\u4ec0\u4e48\uff1f\", \"This habit is more useful than memorizing a long list of syntax rules.\": \"\u8fd9\u4e2a\u4e60\u60ef\u6bd4\u80cc\u4e00\u957f\u4e32\u8bed\u6cd5\u89c4\u5219\u66f4\u6709\u7528\u3002\", \"Try this small exercise:\": \"\u8bd5\u8bd5\u8fd9\u4e2a\u5c0f\u7ec3\u4e60\uff1a\", \"Create a file named hello.py.\": \"\u521b\u5efa\u4e00\u4e2a\u540d\u4e3a hello.py \u7684\u6587\u4ef6\u3002\", \"Print your name.\": \"\u6253\u5370\u4f60\u7684\u540d\u5b57\u3002\", \"Create two variables: first_score and second_score.\": \"\u521b\u5efa\u4e24\u4e2a\u53d8\u91cf\uff1afirst_score \u548c second_score\u3002\", \"Print their average.\": \"\u6253\u5370\u5b83\u4eec\u7684\u5e73\u5747\u503c\u3002\", \"Rename the variables to make them clearer.\": \"\u91cd\u65b0\u547d\u540d\u53d8\u91cf\uff0c\u8ba9\u5b83\u4eec\u66f4\u6e05\u6670\u3002\", \"Python is a strong first language because it helps students practice clear thinking. The goal is not to memorize syntax as fast as possible. The goal is to learn how to write code that is readable, testable, and easy to explain.\": \"Python \u662f\u4e00\u95e8\u5f88\u597d\u7684\u7b2c\u4e00\u7f16\u7a0b\u8bed\u8a00\uff0c\u56e0\u4e3a\u5b83\u80fd\u5e2e\u52a9\u5b66\u751f\u7ec3\u4e60\u6e05\u6670\u601d\u8003\u3002\u76ee\u6807\u4e0d\u662f\u5c3d\u5feb\u80cc\u5b8c\u8bed\u6cd5\uff0c\u800c\u662f\u5b66\u4f1a\u5199\u51fa\u53ef\u8bfb\u3001\u53ef\u6d4b\u8bd5\u3001\u6613\u89e3\u91ca\u7684\u4ee3\u7801\u3002\"};\nconst titleMap = map;\n  document.documentElement.lang = 'zh-CN';\n  Object.keys(map).sort(function(a,b){return b.length-a.length;}).forEach(function(k){ document.title = document.title.replace(k, map[k]); });\n  function animatedHeading(el, text) {\n    const words = text.includes(' ') ? text.split(' ') : Array.from(text);\n    let offset = 0;\n    el.textContent = '';\n    words.forEach(function(word, wordIndex) {\n      const wordSpan = document.createElement('span');\n      wordSpan.className = 'ati-word';\n      Array.from(word).forEach(function(ch, i) {\n        const letter = document.createElement('span');\n        letter.className = 'ati-letter';\n        letter.style.setProperty('--i', offset + i);\n        letter.textContent = ch;\n        wordSpan.appendChild(letter);\n      });\n      el.appendChild(wordSpan);\n      offset += word.length + 1;\n      if (text.includes(' ') && wordIndex < words.length - 1) {\n        el.appendChild(document.createTextNode(' '));\n      }\n    });\n  }\n  document.querySelectorAll('h1[aria-label]').forEach(function(el){\n    const key = el.getAttribute('aria-label');\n    if (titleMap[key]) animatedHeading(el, titleMap[key]);\n  });\n  const skip = new Set(['SCRIPT','STYLE','PRE','CODE','TEXTAREA']);\n  const walker = document.createTreeWalker(document.body, NodeFilter.SHOW_TEXT, {\n    acceptNode: function(node){\n      const parent = node.parentElement;\n      if (!parent || skip.has(parent.tagName)) return NodeFilter.FILTER_REJECT;\n      return node.nodeValue.trim() ? NodeFilter.FILTER_ACCEPT : NodeFilter.FILTER_REJECT;\n    }\n  });\n  const nodes = [];\n  while (walker.nextNode()) nodes.push(walker.currentNode);\n  nodes.forEach(function(node){\n    const raw = node.nodeValue;\n    const trimmed = raw.trim();\n    if (map[trimmed]) node.nodeValue = raw.replace(trimmed, map[trimmed]);\n    else if (trimmed.includes('Accel Thinking')) node.nodeValue = raw.replace(\/Accel Thinking\/g, '\u52a0\u901f\u5ea6\u601d\u7ef4');\n  });\n  document.querySelectorAll('.ati-home h2,.ati-home h3,.ati-home p,.ati-home a,.ati-home span,.ati-home strong,.ati-home b,.ati-home small,.ati-home li,.ati-page h2,.ati-page h3,.ati-page p,.ati-page a,.ati-page span,.ati-page strong,.ati-page b,.ati-page small,.ati-page li').forEach(function(el){\n    if (el.closest('pre,code,script,style,textarea') || el.querySelector('pre,code,script,style,textarea')) return;\n    const key = el.textContent.trim().replace(\/\\s+\/g, ' ');\n    const compactKey = key.replace(\/\\s+\/g, '');\n    if (map[key]) el.textContent = map[key];\n    else if (map[compactKey]) el.textContent = map[compactKey];\n  });\n  document.querySelectorAll('input[placeholder], textarea[placeholder], option, label').forEach(function(el){\n    const text = (el.textContent || el.getAttribute('placeholder') || '').trim();\n    if (map[text]) {\n      if (el.hasAttribute('placeholder')) el.setAttribute('placeholder', map[text]);\n      else el.textContent = map[text];\n    }\n  });\n})();\n<\/script><br \/>\n<script data-source=\"ati_staging_zh_final_cleanup\">\n(function(){\n  if (!location.pathname.toLowerCase().includes('\/zh_cn')) return;\n  document.querySelectorAll('.ati-side strong').forEach(function(el){\n    if (\/Read\\s*Practice\\s*Review\/i.test(el.textContent)) el.innerHTML = '\u9605\u8bfb<br \/>\u7ec3\u4e60<br \/>\u590d\u76d8';\n  });\n  if (location.pathname.includes('\/resources\/')) {\n    const h1 = document.querySelector('.ati-hero h1');\n    if (h1) h1.textContent = '\u52a0\u901f\u5ea6\u601d\u7ef4\u8d44\u6e90\u4e0e\u6587\u7ae0';\n    const label = document.querySelector('.ati-hero .ati-label');\n    if (label && \/CONTENT HUB\/i.test(label.textContent)) label.textContent = '\u5185\u5bb9\u4e2d\u5fc3';\n    const sideStrong = document.querySelector('.ati-hero .ati-side strong');\n    if (sideStrong) sideStrong.innerHTML = 'CCC \u9898\u76ee<br \/>Python \u7b14\u8bb0<br \/>AI \u7d20\u517b';\n    document.querySelectorAll('.ati-page p,.ati-page h2,.ati-page h3,.ati-page span,.ati-page b,.ati-page small').forEach(function(el){\n      const t = el.textContent.trim().replace(\/\\s+\/g, ' ');\n      if (t.includes('Explore the public content library behind')) el.textContent = '\u6d4f\u89c8\u52a0\u901f\u5ea6\u601d\u7ef4\u7684\u516c\u5f00\u5185\u5bb9\u5e93\uff1a\u9762\u5411\u5b66\u751f\u3001\u5bb6\u957f\u548c\u6559\u80b2\u8005\u7684 CCC \u9898\u76ee\u89e3\u6790\u3001Python \u5b66\u4e60\u7b14\u8bb0\u4e0e AI \u7d20\u517b\u6587\u7ae0\u3002';\n      else if (t.includes('Start from a topic channel')) el.textContent = '\u4ece\u4e3b\u9898\u9891\u9053\u8fdb\u5165\uff0c\u9605\u8bfb\u6700\u65b0\u6587\u7ae0\uff0c\u6216\u6d4f\u89c8\u5b8c\u6574\u5f52\u6863\u3002';\n      else if (t.includes('These three channels are the first public content streams')) el.textContent = '\u8fd9\u4e09\u4e2a\u9891\u9053\u662f\u52a0\u901f\u5ea6\u601d\u7ef4\u7b2c\u4e00\u6279\u516c\u5f00\u5185\u5bb9\u6d41\u3002\u6bcf\u4e2a\u9891\u9053\u90fd\u4f1a\u9010\u6b65\u53d1\u5c55\u6210\u53ef\u641c\u7d22\u3001\u53ef\u590d\u7528\u7684\u5b66\u4e60\u8d44\u6599\u5e93\u3002';\n      else if (t.includes('Guidance on responsible AI use')) el.textContent = '\u5173\u4e8e\u8d1f\u8d23\u4efb\u4f7f\u7528 AI\u3001\u5b66\u751f\u5b66\u4e60\u4e0e\u5bb6\u957f\u5e38\u89c1\u95ee\u9898\u7684\u5b9e\u7528\u6307\u5bfc\u3002';\n      else if (t === 'CCC Problems') el.textContent = 'CCC \u9898\u76ee';\n      else if (t === 'Python Notes') el.textContent = 'Python \u7b14\u8bb0';\n      else if (t === 'CONTENT HUB') el.textContent = '\u5185\u5bb9\u4e2d\u5fc3';\n      else if (t === 'PYTHON') el.textContent = 'PYTHON';\n      else if (t === 'CCC 2026 J4 \u2013 Snail Path Solution & Analysis') el.textContent = 'CCC 2026 J4 - Snail Path \u89e3\u9898\u4e0e\u5206\u6790';\n    });\n  }\n})();\n<\/script><\/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_article_feedback_cta\">\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}.ati-feedback-cta p{margin:0!important}.ati-feedback-title{color:#0f172a!important;font-size:20px!important;font-weight:900!important;line-height:1.25!important}.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;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_article_feedback_cta\">\n(function(){\n  var isZh = location.pathname.indexOf('\/zh_cn\/') !== -1;\n  document.querySelectorAll('[data-ati-feedback]').forEach(function(box){\n    var heading = box.querySelector('.ati-feedback-title');\n    var note = box.querySelector('.ati-feedback-note');\n    var link = box.querySelector('[data-ati-feedback-link]');\n    var articleHeading = document.querySelector('.ati-hero h1') || document.querySelector('h1');\n    var articleTitle = articleHeading ? articleHeading.textContent.replace(\/\\s+\/g, ' ').trim() : document.title;\n    if (isZh) {\n      heading.textContent = '\u6709\u95ee\u9898\u6216\u5efa\u8bae\uff1f';\n      note.textContent = '\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';\n      link.textContent = '\u53d1\u9001\u53cd\u9988';\n    }\n    var contactPath = isZh ? '\/zh_cn\/contact\/' : '\/contact\/';\n    link.href = contactPath + '?ati_source=article&article_title=' + encodeURIComponent(articleTitle) + '&article_url=' + encodeURIComponent(location.href.split('#')[0]) + '#wpforms-form-76';\n  });\n})();\n<\/script><\/p>\n<style data-source=\"ati_ccc_2023_j5_word_hunt_article_assets\">\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 ol{margin:12px 0 22px!important;padding-left:24px!important;color:#334155}\n.ati-post-article ol li{margin:8px 0!important;line-height:1.65!important}\n.ati-post-article ul{margin:12px 0 22px!important;padding-left:24px!important;color:#334155}\n.ati-post-article ul li{margin:8px 0!important;line-height:1.65!important}\n.ati-hero h1 .ati-word:not(:last-child){margin-right:0}\n<\/style>\n<p><script data-source=\"ati_word_hunt_zh_20260704\">\n(function(){\n  if (!location.pathname.toLowerCase().includes('\/zh_cn\/')) return;\n  var data = {\"title\": \"CCC 2023 J5 - Word Hunt \u89e3\u9898\u4e0e\u5206\u6790\", \"subtitle\": \"\u4f7f\u7528\u7f51\u683c\u641c\u7d22\u3001\u65b9\u5411\u5411\u91cf\u548c\u4e00\u6b21\u76f4\u89d2\u8f6c\u5f2f\uff0c\u7edf\u8ba1\u5355\u8bcd\u5728\u7f51\u683c\u4e2d\u7684\u6240\u6709\u9690\u85cf\u51fa\u73b0\u6b21\u6570\u3002\", \"date\": \"2026 \u5e74 7 \u6708 4 \u65e5\", \"heroHtml\": \"<span class=\\\"ati-hero-title-line ati-zh-title-line\\\"><span class=\\\"ati-word\\\"><span class=\\\"ati-letter\\\" style=\\\"--i:0\\\">C<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:1\\\">C<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:2\\\">C<\\\/span> <span class=\\\"ati-letter\\\" style=\\\"--i:4\\\">2<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:5\\\">0<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:6\\\">2<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:7\\\">3<\\\/span> <span class=\\\"ati-letter\\\" style=\\\"--i:9\\\">J<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:10\\\">5<\\\/span> <span class=\\\"ati-letter\\\" style=\\\"--i:12\\\">-<\\\/span> <span class=\\\"ati-letter\\\" style=\\\"--i:14\\\">W<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:15\\\">o<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:16\\\">r<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:17\\\">d<\\\/span> <span class=\\\"ati-letter\\\" style=\\\"--i:19\\\">H<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:20\\\">u<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:21\\\">n<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:22\\\">t<\\\/span><\\\/span><\\\/span><span class=\\\"ati-hero-title-line ati-zh-title-line\\\"><span class=\\\"ati-word\\\"><span class=\\\"ati-letter\\\" style=\\\"--i:24\\\">\u89e3<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:25\\\">\u9898<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:26\\\">\u4e0e<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:27\\\">\u5206<\\\/span><span class=\\\"ati-letter\\\" style=\\\"--i:28\\\">\u6790<\\\/span><\\\/span><\\\/span>\", \"articleHtmlB64\": \"PGgyPuaRmOimgTwvaDI+CjxwPui\/memBk+mimOimgeaxguaIkeS7rOe7n+iuoeS4gOS4que7meWumuWNleivjeWcqOWkp+WGmeWtl+avjee9keagvOS4reWHuueOsOS6huWkmuWwkeasoeOAgjwvcD4KPHA+5Y2V6K+N5Y+v5Lul55So5Lik56eN5pa55byP5Ye6546w77yaPC9wPgo8dWw+CiAgPGxpPuebtOe6v+WHuueOsDwvbGk+CjwvdWw+CjxwPuWtl+avjeaMiemhuuW6j+WHuueOsOWcqOWQjOS4gOS4quawtOW5s+OAgeWeguebtOaIluWvueinkue6v+aWueWQkeS4iuOAgjwvcD4KPHVsPgogIDxsaT7nm7Top5LovazlvK\/lh7rnjrA8L2xpPgo8L3VsPgo8cD7ljZXor43ooqvliIbmiJDkuKTmrrXnm7Tnur\/jgILnrKzkuIDmrrXmsr\/nnYDkuIDkuKrmlrnlkJHotbDvvIznrKzkuozmrrXku47mn5DkuKrovazlvK\/lrZfmr43lvIDlp4vvvIzmsr\/nnYDkuI7nrKzkuIDmrrXlnoLnm7TnmoTmlrnlkJHnu6fnu63vvIzlvaLmiJDkuIDkuKrnm7Top5LjgII8L3A+CjxwPuaguOW\/g+aAnei3r+aYr++8muajgOafpeavj+S4gOS4qui1t+eCueOAgeavj+S4gOS4quaWueWQke+8jOS7peWPiuavj+S4gOS4quWPr+iDveeahOi9rOW8r+S9jee9ruOAgjwvcD4KPHA+6L+Z5piv5LiA6YGT5YW45Z6L55qE572R5qC85pCc57Si6aKY77yM6ZyA6KaB55So5pa55ZCR5ZCR6YeP5ZKM6L6555WM5qOA5p+l5oqK6aKY5oSP5YeG56Gu57+76K+R5oiQ5Luj56CB44CCPC9wPgo8aDI+55CG6Kej6Zeu6aKYPC9oMj4KPHA+6aKY55uu57uZ5Ye677yaPC9wPgo8dWw+CiAgPGxpPuS4gOS4quWNleivjSA8Y29kZT5XPC9jb2RlPjwvbGk+CiAgPGxpPuihjOaVsCA8Y29kZT5SPC9jb2RlPjwvbGk+CiAgPGxpPuWIl+aVsCA8Y29kZT5DPC9jb2RlPjwvbGk+CiAgPGxpPuS4gOS4qiA8Y29kZT5SIHggQzwvY29kZT4g55qE5aSn5YaZ5a2X5q+N572R5qC8PC9saT4KPC91bD4KPHA+5oiR5Lus6ZyA6KaB6L6T5Ye6IDxjb2RlPlc8L2NvZGU+IOWcqOe9keagvOS4remakOiXj+WHuueOsOeahOaAu+asoeaVsOOAgjwvcD4KPHA+5Y2V6K+N5b+F6aG75oyJ6aG65bqP6K+75Y+W44CC5LiA5qyh5ZCI5rOV5Ye6546w5Y+v5Lul5piv77yaPC9wPgo8b2w+CiAgPGxpPuaVtOS4quWNleivjeayv+S4gOadoeebtOe6v+WHuueOsDwvbGk+CiAgPGxpPuWFiOayv+S4gOadoeebtOe6v+i1sO+8jOWGjeWBmuS4gOasoSA5MCDluqbovazlvK88L2xpPgo8L29sPgo8cD7kvovlpoLvvIzlpoLmnpzljZXor43mmK8gPGNvZGU+SEVMTE88L2NvZGU+77yM5LiA5qyh6L2s5byv5Ye6546w5Y+v6IO95Zyo5LiN5ZCM5L2N572u5ouG5YiG77yaPC9wPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS10ZXh0Ij5IIHwgRUxMTwpIRSB8IExMTwpIRUwgfCBMTwpIRUxMIHwgTzwvY29kZT48L3ByZT4KPHA+5LiN6L+H5Zyo6L+Z6YGT6aKY5Lit77yM5Lik5q6157q\/5q616YO95bqU6K+l6Iez5bCR56e75Yqo5LiA5q2l44CC5Zug5q2k77yM6L2s5byv54K55LiN6IO95piv6LW35aeL5a2X5q+N77yM5Lmf5LiN6IO95piv5pyA5ZCO5LiA5Liq5a2X5q+N44CCPC9wPgo8cD7lkIzkuIDkuKrnvZHmoLzlrZfmr43lj6\/ku6Xlj4LkuI7lpJrkuKrkuI3lkIznmoTljZXor43lh7rnjrDjgILmiJHku6zmmK\/lnKjnu5\/orqHmiYDmnInlkIjms5Xlh7rnjrDmrKHmlbDvvIzogIzkuI3mmK\/miornlKjov4fnmoTmoLzlrZDmoIforrDkuLrkuI3lj6\/lho3nlKjjgII8L3A+CjxoMj7ovpPlhaXmoLzlvI88L2gyPgo8cD7ovpPlhaXljIXlkKvvvJo8L3A+Cjx1bD4KICA8bGk+56ysIDEg6KGM77ya6KaB5a+75om+55qE5Y2V6K+NIDxjb2RlPlc8L2NvZGU+PC9saT4KICA8bGk+56ysIDIg6KGM77ya5pW05pWwIDxjb2RlPlI8L2NvZGU+77yM6KGo56S66KGM5pWwPC9saT4KICA8bGk+56ysIDMg6KGM77ya5pW05pWwIDxjb2RlPkM8L2NvZGU+77yM6KGo56S65YiX5pWwPC9saT4KICA8bGk+5o6l5LiL5p2lIDxjb2RlPlI8L2NvZGU+IOihjO+8muavj+ihjOWMheWQqyA8Y29kZT5DPC9jb2RlPiDkuKrnlKjnqbrmoLzliIbpmpTnmoTlpKflhpnlrZfmr408L2xpPgo8L3VsPgo8cD7ljZXor43nlLHkupLkuI3nm7jlkIznmoTlpKflhpnlrZfmr43nu4TmiJDvvIzplb\/luqboh7PlsJHkuLogMuOAgjwvcD4KPGgyPuebuOWFs+eahOaVsOaNrue7k+aehOWSjOeul+azleefpeivhueCuTwvaDI+Cjx1bD4KICA8bGk+572R5qC86YGN5Y6GPC9saT4KPC91bD4KPHA+5bCd6K+V5oqK5q+P5LiA5Liq5qC85a2Q5L2c5Li65Y+v6IO955qE6LW354K544CCPC9wPgo8dWw+CiAgPGxpPuaWueWQkeWQkemHjzwvbGk+CjwvdWw+CjxwPueUqCA8Y29kZT4oZHIsIGRjKTwvY29kZT4g6KGo56S65q+P5LiA5q2l6KGM5YiX5Z2Q5qCH55qE5Y+Y5YyW44CCPC9wPgo8dWw+CiAgPGxpPuWwj+WIhuaUr+aatOWKm+aQnOe0ojwvbGk+CjwvdWw+CjxwPuWvueavj+S4qui1t+eCue+8jOWwneivleaJgOacieaWueWQkeWSjOaJgOacieWPr+iDveeahOi9rOW8r+S9jee9ruOAgjwvcD4KPHVsPgogIDxsaT7miorlh6DkvZXop4TliJnlhpnmiJDku6PnoIE8L2xpPgo8L3VsPgo8cD7kuIDmrKHnm7Top5LovazlvK\/lj6\/ku6XooajnpLrkuLrku47lvZPliY3mlrnlkJHliIfmjaLliLDkuKTkuKrlnoLnm7TmlrnlkJHkuYvkuIDjgII8L3A+Cjx1bD4KICA8bGk+6L6555WM5qOA5p+lPC9saT4KPC91bD4KPHA+5YCZ6YCJ6Lev5b6E5Lit55qE5q+P5LiA5Liq5qC85a2Q6YO95b+F6aG755WZ5Zyo572R5qC86IyD5Zu05YaF44CCPC9wPgo8aDI+5pa55ZCR5qih5Z6LPC9oMj4KPHA+5oiR5Lus5oyJ5ZyG5b2i6aG65bqP5L2\/55SoIDgg5Liq5pa55ZCR77yaPC9wPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS10ZXh0Ij5FLCBORSwgTiwgTlcsIFcsIFNXLCBTLCBTRTwvY29kZT48L3ByZT4KPHA+5ZyoIFB5dGhvbiDkuK3vvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXB5dGhvbiI+ZGlycyA9IFsKICAgICgwLCAxKSwgICAgIyBFCiAgICAoLTEsIDEpLCAgICMgTkUKICAgICgtMSwgMCksICAgIyBOCiAgICAoLTEsIC0xKSwgICMgTlcKICAgICgwLCAtMSksICAgIyBXCiAgICAoMSwgLTEpLCAgICMgU1cKICAgICgxLCAwKSwgICAgIyBTCiAgICAoMSwgMSkgICAgICMgU0UKXTwvY29kZT48L3ByZT4KPHA+6L+Z5qC35o6S5YiX5ZCO77yM5a+75om+5Z6C55u05pa55ZCR5Lya5b6I5pa55L6\/44CCPC9wPgo8cD7lpoLmnpznrKzkuIDkuKrmlrnlkJHnmoTkuIvmoIfmmK8gPGNvZGU+ZDwvY29kZT7vvIzkuKTkuKrlnoLnm7TmlrnlkJHlsLHmmK\/vvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXRleHQiPihkICsgMikgJSA4CihkIC0gMikgJSA4PC9jb2RlPjwvcHJlPgo8cD7kvovlpoLvvJo8L3A+Cjx1bD4KICA8bGk+5ZCR5Lic5Y+v5Lul6L2s5ZCR5YyX5oiW5Y2XPC9saT4KICA8bGk+5ZCR5Lic5YyX5Y+v5Lul6L2s5ZCR6KW\/5YyX5oiW5Lic5Y2XPC9saT4KICA8bGk+5ZCR5YyX5Y+v5Lul6L2s5ZCR6KW\/5oiW5LicPC9saT4KPC91bD4KPGgyPuino+mimOaAnei3rzwvaDI+CjxwPuaIkeS7rOWIhuWIq+e7n+iuoeS4pOexu+WMuemFjeOAgjwvcD4KPGgzPjEuIOebtOe6v+aQnOe0ojwvaDM+CjxwPuWvueavj+S4gOS4qui1t+Wni+agvO+8mjwvcD4KPHVsPgogIDxsaT7lsJ3or5UgOCDkuKrmlrnlkJE8L2xpPgogIDxsaT7mo4Dmn6Xmsr\/or6XmlrnlkJHotbDml7bvvIw8Y29kZT5XPC9jb2RlPiDnmoTmr4\/kuKrlrZfnrKbmmK\/lkKbpg73og73ljLnphY08L2xpPgogIDxsaT7lpoLmnpzmlbTkuKrljZXor43ljLnphY3miJDlip\/vvIznrZTmoYjliqAgMTwvbGk+CjwvdWw+CjxoMz4yLiDnm7Top5LovazlvK\/mkJzntKI8L2gzPgo8cD7lr7nmr4\/kuIDkuKrotbflp4vmoLzvvJo8L3A+Cjx1bD4KICA8bGk+6YCJ5oup56ys5LiA5Liq5pa55ZCRIDxjb2RlPmQxPC9jb2RlPjwvbGk+CiAgPGxpPumAieaLqeS4gOS4quS4juWug+WeguebtOeahOesrOS6jOaWueWQkSA8Y29kZT5kMjwvY29kZT48L2xpPgogIDxsaT7pgInmi6nkuIDkuKrovazlvK\/kvY3nva4gPGNvZGU+dHVybl9hdDwvY29kZT48L2xpPgogIDxsaT7mo4Dmn6XvvJo8L2xpPgo8L3VsPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS10ZXh0Ij5XWzBdIC4uLiBXW3R1cm5fYXRdPC9jb2RlPjwvcHJlPgo8cD7mmK\/lkKbmsr\/nnYAgPGNvZGU+ZDE8L2NvZGU+IOWMuemFje+8jOW5tuS4lO+8mjwvcD4KPHByZT48Y29kZSBjbGFzcz0ibGFuZ3VhZ2UtdGV4dCI+V1t0dXJuX2F0ICsgMV0gLi4uIFdbTCAtIDFdPC9jb2RlPjwvcHJlPgo8cD7mmK\/lkKbku47ovazlvK\/lrZfmr43lvIDlp4vvvIzmsr\/nnYAgPGNvZGU+ZDI8L2NvZGU+IOWMuemFjeOAgjwvcD4KPHA+6L2s5byv5a2X5q+N5bGe5LqO56ys5LiA5q6144CC56ys5LqM5q615LuO6L2s5byv54K55LmL5ZCO55qE5LiA5qC85byA5aeL44CCPC9wPgo8cD7lpoLmnpzljZXor43plb\/luqbkuLogPGNvZGU+TDwvY29kZT7vvIzlkIjms5XnmoTovazlvK\/kvY3nva7mmK\/vvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXRleHQiPjEsIDIsIC4uLiwgTCAtIDI8L2NvZGU+PC9wcmU+CjxwPui\/meagt+WPr+S7peS\/neivgeS4pOautee6v+autemDveiHs+WwkeacieS4gOasoeenu+WKqOOAgjwvcD4KPGgyPui+heWKqeWHveaVsDwvaDI+CjxwPuaIkeS7rOS9v+eUqOS4ieS4qui+heWKqeWHveaVsO+8mjwvcD4KPHVsPgogIDxsaT48Y29kZT5pbnNpZGUociwgYyk8L2NvZGU+PC9saT4KPC91bD4KPHA+5Yik5patIDxjb2RlPihyLCBjKTwvY29kZT4g5piv5ZCm5Zyo572R5qC85YaF44CCPC9wPgo8dWw+CiAgPGxpPjxjb2RlPm1hdGNoX3N0cmFpZ2h0KHIsIGMsIGRyLCBkYyk8L2NvZGU+PC9saT4KPC91bD4KPHA+5Yik5pat5LuOIDxjb2RlPihyLCBjKTwvY29kZT4g5Ye65Y+R77yM5rK\/5LiA5Liq5pa55ZCR6IO95ZCm5Yy56YWN5a6M5pW05Y2V6K+N44CCPC9wPgo8dWw+CiAgPGxpPjxjb2RlPm1hdGNoX2JlbmQociwgYywgZDEsIGQyLCB0dXJuX2F0KTwvY29kZT48L2xpPgo8L3VsPgo8cD7liKTmlq3ljZXor43og73lkKbnlKjkuIDkuKrliJ3lp4vmlrnlkJHjgIHkuIDkuKrlnoLnm7TmlrnlkJHlkozkuIDkuKrmjIflrprovazlvK\/kvY3nva7lrozmiJDljLnphY3jgII8L3A+CjxwPui\/meagt+S4u+W+queOr+S8muabtOa4heaZsOOAgjwvcD4KPGgyPlB5dGhvbiDop6Pms5U8L2gyPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS1weXRob24iPiMgQ0NDIDIwMjMgSjUgLSBDQ0MgV29yZCBIdW50CiMgU3RyYWlnaHQtbGluZSBhbmQgb25lLWJlbmQgZ3JpZCBzZWFyY2gKClcgPSBpbnB1dCgpLnN0cmlwKCkKTCA9IGxlbihXKQoKUiA9IGludChpbnB1dCgpKQpDID0gaW50KGlucHV0KCkpCgpncmlkID0gW2lucHV0KCkuc3BsaXQoKSBmb3IgXyBpbiByYW5nZShSKV0KCiMgOCBkaXJlY3Rpb25zIGluIGNpcmN1bGFyIG9yZGVyIHNvIHBlcnBlbmRpY3VsYXIgdHVybnMgYXJlICsvLSAyCmRpcnMgPSBbCiAgICAoMCwgMSksICAgICMgRQogICAgKC0xLCAxKSwgICAjIE5FCiAgICAoLTEsIDApLCAgICMgTgogICAgKC0xLCAtMSksICAjIE5XCiAgICAoMCwgLTEpLCAgICMgVwogICAgKDEsIC0xKSwgICAjIFNXCiAgICAoMSwgMCksICAgICMgUwogICAgKDEsIDEpICAgICAjIFNFCl0KCgpkZWYgaW5zaWRlKHIsIGMpOgogICAgcmV0dXJuIDAgJmx0Oz0gciAmbHQ7IFIgYW5kIDAgJmx0Oz0gYyAmbHQ7IEMKCgpkZWYgbWF0Y2hfc3RyYWlnaHQociwgYywgZHIsIGRjKToKICAgICMgTWF0Y2ggV1swLi5MLTFdIHN0YXJ0aW5nIGF0IChyLCBjKSwgc3RlcHBpbmcgYnkgKGRyLCBkYykKICAgIGZvciBrIGluIHJhbmdlKEwpOgogICAgICAgIG5yID0gciArIGRyICogawogICAgICAgIG5jID0gYyArIGRjICogawoKICAgICAgICBpZiBub3QgaW5zaWRlKG5yLCBuYykgb3IgZ3JpZFtucl1bbmNdICE9IFdba106CiAgICAgICAgICAgIHJldHVybiBGYWxzZQoKICAgIHJldHVybiBUcnVlCgoKZGVmIG1hdGNoX2JlbmQociwgYywgZDEsIGQyLCB0dXJuX2F0KToKICAgICZxdW90OyZxdW90OyZxdW90OwogICAgRmlyc3Qgc2VnbWVudDoKICAgICAgV1swLi50dXJuX2F0XSBhbG9uZyBkaXJlY3Rpb24gZDEsIGluY2x1ZGluZyB0aGUgdHVybmluZyBsZXR0ZXIuCgogICAgU2Vjb25kIHNlZ21lbnQ6CiAgICAgIFdbdHVybl9hdCsxLi5MLTFdIGFsb25nIGRpcmVjdGlvbiBkMiwgc3RhcnRpbmcgb25lIHN0ZXAgYWZ0ZXIKICAgICAgdGhlIHR1cm5pbmcgbGV0dGVyLgogICAgJnF1b3Q7JnF1b3Q7JnF1b3Q7CiAgICBkcjEsIGRjMSA9IGRpcnNbZDFdCiAgICBkcjIsIGRjMiA9IGRpcnNbZDJdCgogICAgIyBDaGVjayB0aGUgZmlyc3Qgc2VnbWVudCwgaW5jbHVkaW5nIHRoZSB0dXJuaW5nIHBvaW50LgogICAgZm9yIGsgaW4gcmFuZ2UodHVybl9hdCArIDEpOgogICAgICAgIG5yID0gciArIGRyMSAqIGsKICAgICAgICBuYyA9IGMgKyBkYzEgKiBrCgogICAgICAgIGlmIG5vdCBpbnNpZGUobnIsIG5jKSBvciBncmlkW25yXVtuY10gIT0gV1trXToKICAgICAgICAgICAgcmV0dXJuIEZhbHNlCgogICAgIyBUdXJuaW5nIHBvaW50IGxvY2F0aW9uLgogICAgcHIgPSByICsgZHIxICogdHVybl9hdAogICAgcGMgPSBjICsgZGMxICogdHVybl9hdAoKICAgICMgQ2hlY2sgdGhlIHNlY29uZCBzZWdtZW50LgogICAgZm9yIGsgaW4gcmFuZ2UodHVybl9hdCArIDEsIEwpOgogICAgICAgIHN0ZXAgPSBrIC0gdHVybl9hdAogICAgICAgIG5yID0gcHIgKyBkcjIgKiBzdGVwCiAgICAgICAgbmMgPSBwYyArIGRjMiAqIHN0ZXAKCiAgICAgICAgaWYgbm90IGluc2lkZShuciwgbmMpIG9yIGdyaWRbbnJdW25jXSAhPSBXW2tdOgogICAgICAgICAgICByZXR1cm4gRmFsc2UKCiAgICByZXR1cm4gVHJ1ZQoKCmNvdW50ID0gMAoKZm9yIHIgaW4gcmFuZ2UoUik6CiAgICBmb3IgYyBpbiByYW5nZShDKToKICAgICAgICBpZiBncmlkW3JdW2NdICE9IFdbMF06CiAgICAgICAgICAgIGNvbnRpbnVlCgogICAgICAgICMgMS4gU3RyYWlnaHQtbGluZSBtYXRjaGVzCiAgICAgICAgZm9yIGQgaW4gcmFuZ2UoOCk6CiAgICAgICAgICAgIGRyLCBkYyA9IGRpcnNbZF0KICAgICAgICAgICAgaWYgbWF0Y2hfc3RyYWlnaHQociwgYywgZHIsIGRjKToKICAgICAgICAgICAgICAgIGNvdW50ICs9IDEKCiAgICAgICAgIyAyLiBPbmUtYmVuZCBtYXRjaGVzCiAgICAgICAgZm9yIGQxIGluIHJhbmdlKDgpOgogICAgICAgICAgICBmb3IgZDIgaW4gKChkMSArIDIpICUgOCwgKGQxIC0gMikgJSA4KToKICAgICAgICAgICAgICAgIGZvciB0dXJuX2F0IGluIHJhbmdlKDEsIEwgLSAxKToKICAgICAgICAgICAgICAgICAgICBpZiBtYXRjaF9iZW5kKHIsIGMsIGQxLCBkMiwgdHVybl9hdCk6CiAgICAgICAgICAgICAgICAgICAgICAgIGNvdW50ICs9IDEKCnByaW50KGNvdW50KTwvY29kZT48L3ByZT4KPGgyPkMrKyDop6Pms5U8L2gyPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS1jcHAiPi8vIENDQyAyMDIzIEo1IC0gQ0NDIFdvcmQgSHVudAovLyBTdHJhaWdodC1saW5lIGFuZCBvbmUtYmVuZCBncmlkIHNlYXJjaAoKI2luY2x1ZGUgJmx0O2lvc3RyZWFtJmd0OwojaW5jbHVkZSAmbHQ7dmVjdG9yJmd0OwojaW5jbHVkZSAmbHQ7c3RyaW5nJmd0Owp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKaW50IFIsIEM7CnN0cmluZyBXOwppbnQgTDsKCi8vIDggZGlyZWN0aW9ucyBpbiBjaXJjdWxhciBvcmRlciBzbyBwZXJwZW5kaWN1bGFyIHR1cm5zIGFyZSArLy0gMgppbnQgZHJbOF0gPSB7MCwgLTEsIC0xLCAtMSwgMCwgMSwgMSwgMX07CmludCBkY1s4XSA9IHsxLCAgMSwgIDAsIC0xLCAtMSwgLTEsIDAsIDF9OwoKYm9vbCBpbnNpZGUoaW50IHIsIGludCBjKSB7CiAgICByZXR1cm4gMCAmbHQ7PSByICZhbXA7JmFtcDsgciAmbHQ7IFIgJmFtcDsmYW1wOyAwICZsdDs9IGMgJmFtcDsmYW1wOyBjICZsdDsgQzsKfQoKYm9vbCBtYXRjaFN0cmFpZ2h0KGNvbnN0IHZlY3RvciZsdDt2ZWN0b3ImbHQ7Y2hhciZndDsmZ3Q7JmFtcDsgZ3JpZCwgaW50IHIsIGludCBjLCBpbnQgZCkgewogICAgLy8gTWF0Y2ggV1swLi5MLTFdIHN0YXJ0aW5nIGF0IChyLCBjKSwgc3RlcHBpbmcgaW4gZGlyZWN0aW9uIGQuCiAgICBmb3IgKGludCBrID0gMDsgayAmbHQ7IEw7IGsrKykgewogICAgICAgIGludCBuciA9IHIgKyBkcltkXSAqIGs7CiAgICAgICAgaW50IG5jID0gYyArIGRjW2RdICogazsKCiAgICAgICAgaWYgKCFpbnNpZGUobnIsIG5jKSB8fCBncmlkW25yXVtuY10gIT0gV1trXSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiB0cnVlOwp9Cgpib29sIG1hdGNoQmVuZChjb25zdCB2ZWN0b3ImbHQ7dmVjdG9yJmx0O2NoYXImZ3Q7Jmd0OyZhbXA7IGdyaWQsIGludCByLCBpbnQgYywKICAgICAgICAgICAgICAgaW50IGQxLCBpbnQgZDIsIGludCB0dXJuQXQpIHsKICAgIC8vIENoZWNrIGZpcnN0IHNlZ21lbnQsIGluY2x1ZGluZyB0aGUgdHVybmluZyBwb2ludC4KICAgIGZvciAoaW50IGsgPSAwOyBrICZsdDs9IHR1cm5BdDsgaysrKSB7CiAgICAgICAgaW50IG5yID0gciArIGRyW2QxXSAqIGs7CiAgICAgICAgaW50IG5jID0gYyArIGRjW2QxXSAqIGs7CgogICAgICAgIGlmICghaW5zaWRlKG5yLCBuYykgfHwgZ3JpZFtucl1bbmNdICE9IFdba10pIHsKICAgICAgICAgICAgcmV0dXJuIGZhbHNlOwogICAgICAgIH0KICAgIH0KCiAgICAvLyBUdXJuaW5nIHBvaW50IGxvY2F0aW9uLgogICAgaW50IHByID0gciArIGRyW2QxXSAqIHR1cm5BdDsKICAgIGludCBwYyA9IGMgKyBkY1tkMV0gKiB0dXJuQXQ7CgogICAgLy8gQ2hlY2sgc2Vjb25kIHNlZ21lbnQsIHN0YXJ0aW5nIG9uZSBzdGVwIGFmdGVyIHRoZSB0dXJuaW5nIHBvaW50LgogICAgZm9yIChpbnQgayA9IHR1cm5BdCArIDE7IGsgJmx0OyBMOyBrKyspIHsKICAgICAgICBpbnQgc3RlcCA9IGsgLSB0dXJuQXQ7CiAgICAgICAgaW50IG5yID0gcHIgKyBkcltkMl0gKiBzdGVwOwogICAgICAgIGludCBuYyA9IHBjICsgZGNbZDJdICogc3RlcDsKCiAgICAgICAgaWYgKCFpbnNpZGUobnIsIG5jKSB8fCBncmlkW25yXVtuY10gIT0gV1trXSkgewogICAgICAgICAgICByZXR1cm4gZmFsc2U7CiAgICAgICAgfQogICAgfQoKICAgIHJldHVybiB0cnVlOwp9CgppbnQgbWFpbigpIHsKICAgIGNpbiAmZ3Q7Jmd0OyBXOwogICAgTCA9IChpbnQpVy5zaXplKCk7CgogICAgY2luICZndDsmZ3Q7IFI7CiAgICBjaW4gJmd0OyZndDsgQzsKCiAgICB2ZWN0b3ImbHQ7dmVjdG9yJmx0O2NoYXImZ3Q7Jmd0OyBncmlkKFIsIHZlY3RvciZsdDtjaGFyJmd0OyhDKSk7CgogICAgZm9yIChpbnQgciA9IDA7IHIgJmx0OyBSOyByKyspIHsKICAgICAgICBmb3IgKGludCBjID0gMDsgYyAmbHQ7IEM7IGMrKykgewogICAgICAgICAgICBjaW4gJmd0OyZndDsgZ3JpZFtyXVtjXTsKICAgICAgICB9CiAgICB9CgogICAgaW50IGNvdW50ID0gMDsKCiAgICBmb3IgKGludCByID0gMDsgciAmbHQ7IFI7IHIrKykgewogICAgICAgIGZvciAoaW50IGMgPSAwOyBjICZsdDsgQzsgYysrKSB7CiAgICAgICAgICAgIGlmIChncmlkW3JdW2NdICE9IFdbMF0pIHsKICAgICAgICAgICAgICAgIGNvbnRpbnVlOwogICAgICAgICAgICB9CgogICAgICAgICAgICAvLyAxLiBTdHJhaWdodC1saW5lIG1hdGNoZXMKICAgICAgICAgICAgZm9yIChpbnQgZCA9IDA7IGQgJmx0OyA4OyBkKyspIHsKICAgICAgICAgICAgICAgIGlmIChtYXRjaFN0cmFpZ2h0KGdyaWQsIHIsIGMsIGQpKSB7CiAgICAgICAgICAgICAgICAgICAgY291bnQrKzsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQoKICAgICAgICAgICAgLy8gMi4gT25lLWJlbmQgbWF0Y2hlcwogICAgICAgICAgICBmb3IgKGludCBkMSA9IDA7IGQxICZsdDsgODsgZDErKykgewogICAgICAgICAgICAgICAgaW50IGQyYSA9IChkMSArIDIpICUgODsKICAgICAgICAgICAgICAgIGludCBkMmIgPSAoZDEgKyA2KSAlIDg7IC8vIHNhbWUgYXMgKGQxIC0gMiArIDgpICUgOAoKICAgICAgICAgICAgICAgIGZvciAoaW50IHR1cm5BdCA9IDE7IHR1cm5BdCAmbHQ7PSBMIC0gMjsgdHVybkF0KyspIHsKICAgICAgICAgICAgICAgICAgICBpZiAobWF0Y2hCZW5kKGdyaWQsIHIsIGMsIGQxLCBkMmEsIHR1cm5BdCkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgY291bnQrKzsKICAgICAgICAgICAgICAgICAgICB9CgogICAgICAgICAgICAgICAgICAgIGlmIChtYXRjaEJlbmQoZ3JpZCwgciwgYywgZDEsIGQyYiwgdHVybkF0KSkgewogICAgICAgICAgICAgICAgICAgICAgICBjb3VudCsrOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0KCiAgICBjb3V0ICZsdDsmbHQ7IGNvdW50ICZsdDsmbHQ7ICYjeDI3O1xuJiN4Mjc7OwoKICAgIHJldHVybiAwOwp9PC9jb2RlPjwvcHJlPgo8aDI+5aSN5p2C5bqm5YiG5p6QPC9oMj4KPHA+6K6+77yaPC9wPgo8cHJlPjxjb2RlIGNsYXNzPSJsYW5ndWFnZS10ZXh0Ij5MID0g5Y2V6K+N6ZW\/5bqmPC9jb2RlPjwvcHJlPgo8cD7lr7nkuo7mr4\/kuKrnvZHmoLzmoLzlrZDvvIzmiJHku6zkvJrlsJ3or5XvvJo8L3A+Cjx1bD4KICA8bGk+OCDkuKrnm7Tnur\/mlrnlkJE8L2xpPgogIDxsaT44IOS4qui9rOW8r+WNleivjeeahOesrOS4gOaWueWQkTwvbGk+CiAgPGxpPjIg5Liq5Z6C55u055qE56ys5LqM5pa55ZCRPC9saT4KICA8bGk+5pyA5aSaIDxjb2RlPkwgLSAyPC9jb2RlPiDkuKrovazlvK\/kvY3nva48L2xpPgo8L3VsPgo8cD7mr4\/mrKHmo4Dmn6XmnIDlpJrmiavmj48gPGNvZGU+TDwvY29kZT4g5Liq5a2X5q+N44CCPC9wPgo8cD7lm6DmraTkuIDkuKrmuIXmmbDnmoTml7bpl7TlpI3mnYLluqbkuIrnlYzmmK\/vvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXRleHQiPk8oUiAqIEMgKiA4ICogTF4yKTwvY29kZT48L3ByZT4KPHA+55Sx5LqO5pys6aKY5Y2V6K+N6ZW\/5bqm6L6D5bCP77yM6L+Z56eN5pa55rOV5pWI546H6Laz5aSf77yM6ICM5LiU6Z2e5bi45a655piT55CG6Kej5ZKM5qOA5p+l44CCPC9wPgo8cD7pmaTovpPlhaXnvZHmoLzlpJbvvIzpop3lpJbnqbrpl7TkuLrvvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXRleHQiPk8oMSk8L2NvZGU+PC9wcmU+CjxoMj7luLjop4HplJnor688L2gyPgo8dWw+CiAgPGxpPuWPquajgOafpeebtOe6vzwvbGk+CjwvdWw+CjxwPuWujOaVtOmimOebruWFgeiuuOS4gOasoeebtOinkui9rOW8r+OAgjwvcD4KPHVsPgogIDxsaT7ovazlkJHkuobpnZ7lnoLnm7TmlrnlkJE8L2xpPgo8L3VsPgo8cD7lkIjms5XovazlvK\/lv4XpobvlvaLmiJDnm7Top5LjgILku47mlrnlkJEgPGNvZGU+ZDwvY29kZT4g5Ye65Y+R77yM5Y+q6IO96L2s5ZCRIDxjb2RlPihkICsgMikgJSA4PC9jb2RlPiDlkowgPGNvZGU+KGQgLSAyKSAlIDg8L2NvZGU+44CCPC9wPgo8dWw+CiAgPGxpPuiuqei9rOW8r+WPkeeUn+WcqOesrOS4gOS4quaIluacgOWQjuS4gOS4quWtl+avjTwvbGk+CjwvdWw+CjxwPui\/meagt+WPr+iDvemAoOaIkOmHjeWkjeiuoeaVsO+8jOaIluiAheiuqeesrOS6jOauteS4uuepuuOAguW6lOS9v+eUqOS7jiA8Y29kZT4xPC9jb2RlPiDliLAgPGNvZGU+TCAtIDI8L2NvZGU+IOeahCA8Y29kZT50dXJuX2F0PC9jb2RlPuOAgjwvcD4KPHVsPgogIDxsaT7lv5jorrDlr7nop5Lnur\/mlrnlkJE8L2xpPgo8L3VsPgo8cD7ljZXor43lj6\/ku6XmsLTlubPjgIHlnoLnm7TmiJbmsr\/lr7nop5Lnur\/lh7rnjrDjgII8L3A+Cjx1bD4KICA8bGk+5re35reG6L2s5byv5a2X5q+NPC9saT4KPC91bD4KPHA+6L2s5byv5a2X5q+N5bGe5LqO56ys5LiA5q6144CC56ys5LqM5q615LuO6L2s5byv54K55LmL5ZCO55qE5LiA5qC85byA5aeL44CCPC9wPgo8dWw+CiAgPGxpPuS9v+eUqCB2aXNpdGVkIOmbhuWQiDwvbGk+CjwvdWw+CjxwPui\/meS4jeaYr+S4gOS4quagvOWtkOeUqOi\/h+WQjuWwseS4jeiDveWGjeeUqOeahOi3r+W+hOaQnOe0oumXrumimOOAguWQjOS4gOS4que9keagvOWtl+avjeWPr+S7peWPguS4juWkmuS4quS4jeWQjOeahOWHuueOsOOAgjwvcD4KPGgyPuWtpuS5oOebruaghzwvaDI+CjxwPui\/memBk+mimOW+iOmAguWQiOe7g+S5oO+8mjwvcD4KPHVsPgogIDxsaT7ns7vnu5\/lnLDmiavmj4\/nvZHmoLw8L2xpPgogIDxsaT7nlKjmlbDnu4TooajnpLrmlrnlkJE8L2xpPgogIDxsaT7miorlh6DkvZXop4TliJnovazmjaLmiJDlnZDmoIfnp7vliqg8L2xpPgogIDxsaT7nlKjovoXliqnlh73mlbDlhpnlh7rmm7TmuIXmmbDnmoTmmrTlipvmkJzntKI8L2xpPgogIDxsaT7pgb\/lhY3mkJzntKLpopjkuK3nmoTph43lpI3orqHmlbA8L2xpPgo8L3VsPgo8cD7mnIDph43opoHnmoTlrp7njrDmpoLlv7XmmK\/ovazlvK\/ngrnvvJo8L3A+CjxwcmU+PGNvZGUgY2xhc3M9Imxhbmd1YWdlLXRleHQiPnR1cm5fYXQgPSDot6\/lvoTmlLnlj5jmlrnlkJHnmoTpgqPkuKrlrZfmr43kuIvmoIc8L2NvZGU+PC9wcmU+CjxwPuS4gOaXpuehruWumuS6hui1t+Wni+agvOOAgeesrOS4gOS4quaWueWQkeOAgeesrOS6jOS4quaWueWQkeWSjOi9rOW8r+S9jee9ru+8jOaVtOadoei3r+W+hOWwseWbuuWumuS6huOAguaOpeS4i+adpeWPqumcgOimgeajgOafpeWtl+avjeaYr+WQpuWMuemFjeOAgjwvcD4KPGgyPue7g+S5oOmXrumimDwvaDI+CjxvbD4KICA8bGk+5Li65LuA5LmI6ZyA6KaBIDgg5Liq5pa55ZCR77yM6ICM5LiN5pivIDQg5Liq5pa55ZCR77yfPC9saT4KICA8bGk+5Li65LuA5LmI5Zyo5ZyG5b2i5pa55ZCR5YiX6KGo5Lit77yM5Z6C55u05pa55ZCR5Yia5aW955u46ZqU5Lik5Liq5L2N572u77yfPC9saT4KICA8bGk+5Li65LuA5LmIIDxjb2RlPnR1cm5fYXQ8L2NvZGU+IOW6lOivpeS7jiAxIOW8gOWni++8nzwvbGk+CiAgPGxpPuS4uuS7gOS5iCA8Y29kZT50dXJuX2F0PC9jb2RlPiDlupTor6XliLAgPGNvZGU+TCAtIDI8L2NvZGU+IOWBnOatou+8nzwvbGk+CiAgPGxpPuWmguaenOmimOebruWFgeiuuOWkmuasoei9rOW8r++8jOino+azlemcgOimgeWmguS9leaUueWPmO+8nzwvbGk+Cjwvb2w+\", \"sideStrong\": \"\u7f51\u683c\u641c\u7d22<br \/>\u65b9\u5411\u5411\u91cf<br \/>\u4e00\u6b21\u8f6c\u5f2f\", \"sideText\": \"\u901a\u8fc7\u7ed3\u6784\u5316\u8bb2\u89e3\u3001\u5b9e\u73b0\u8bf4\u660e\u548c\u590d\u76d8\u95ee\u9898\u8fdb\u884c CCC \u7ec3\u4e60\u3002\", \"feedbackTitle\": \"\u6709\u95ee\u9898\u6216\u5efa\u8bae\uff1f\", \"feedbackNote\": \"\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\", \"feedbackButton\": \"\u53d1\u9001\u53cd\u9988\", \"back\": \"\u2190 \u8fd4\u56de CP \u6bcf\u5468\u6311\u6218\"};\n  var style = document.createElement('style');\n  style.textContent = '.ati-hero h1{overflow:visible!important;line-height:1.16!important}.ati-hero h1 .ati-zh-title-line{display:block!important;line-height:1.16!important;padding-bottom:.1em;white-space:normal!important}.ati-hero h1 .ati-zh-title-line .ati-word{white-space:normal!important}';\n  document.head.appendChild(style);\n  function decodeBase64Html(value) {\n    return decodeURIComponent(Array.prototype.map.call(atob(value), function(ch) {\n      return '%' + ('00' + ch.charCodeAt(0).toString(16)).slice(-2);\n    }).join(''));\n  }\n  document.title = data.title + ' - Accel Thinking';\n  var entryTitle = document.querySelector('.entry-title');\n  if (entryTitle) entryTitle.textContent = data.title;\n  var hero = document.querySelector('.ati-hero');\n  if (hero) {\n    var h1 = hero.querySelector('h1');\n    var subtitle = hero.querySelector('h1 + p');\n    var meta = hero.querySelector('.ati-article-meta');\n    var sideStrong = hero.querySelector('.ati-side strong');\n    var sideText = hero.querySelector('.ati-side p');\n    if (h1) {\n      h1.setAttribute('aria-label', data.title);\n      h1.innerHTML = data.heroHtml;\n    }\n    if (subtitle) subtitle.textContent = data.subtitle;\n    if (meta) meta.innerHTML = '<span>\u4f5c\u8005\uff1aBerny<\/span><span>' + data.date + '<\/span>';\n    if (sideStrong) sideStrong.innerHTML = data.sideStrong;\n    if (sideText) sideText.textContent = data.sideText;\n  }\n  var article = document.querySelector('.ati-post-article');\n  if (article) article.innerHTML = decodeBase64Html(data.articleHtmlB64);\n  var feedback = document.querySelector('[data-ati-feedback]');\n  if (feedback) {\n    var title = feedback.querySelector('.ati-feedback-title');\n    var note = feedback.querySelector('.ati-feedback-note');\n    var button = feedback.querySelector('.ati-feedback-button');\n    if (title) title.textContent = data.feedbackTitle;\n    if (note) note.textContent = data.feedbackNote;\n    if (button) {\n      button.textContent = data.feedbackButton;\n      button.href = '\/zh_cn\/contact\/';\n    }\n  }\n  var back = document.querySelector('.ati-article-back a');\n  if (back) {\n    back.textContent = data.back;\n    back.href = '\/zh_cn\/cp-weekly-challenge\/';\n  }\n})();\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With Us &#9776; HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With UsClose HomeSolutionsCP AcademyAI LiteracyResourcesAboutContact Partner With Us CP Weekly Challenge [&hellip;]<\/p>\n","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,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"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":[],"class_list":["post-1233","post","type-post","status-publish","format-standard","hentry","category-cp-weekly-challenge"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v27.9 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>CCC 2023 J5 - Word Hunt Solution &amp; Analysis - Accel Thinking<\/title>\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\/ccc-2023-j5-word-hunt-solution-analysis\/\" \/>\n<meta property=\"og:locale\" content=\"zh_CN\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"CCC 2023 J5 - Word Hunt Solution &amp; Analysis - Accel Thinking\" \/>\n<meta property=\"og:description\" content=\"HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With Us &#9776; HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With UsClose HomeSolutionsCP AcademyAI LiteracyResourcesAboutContact Partner With Us CP Weekly Challenge [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/accelthinking.com\/zh_cn\/ccc-2023-j5-word-hunt-solution-analysis\/\" \/>\n<meta property=\"og:site_name\" content=\"Accel Thinking\" \/>\n<meta property=\"article:published_time\" content=\"2026-07-04T19:24:47+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-07-04T19:31:02+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png\" \/>\n<meta name=\"author\" content=\"ATI Builder\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\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\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#article\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/\"},\"author\":{\"name\":\"ATI Builder\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#\\\/schema\\\/person\\\/bb7b104098a9c6c91f4fe54c4ab4a348\"},\"headline\":\"CCC 2023 J5 &#8211; Word Hunt Solution &#038; Analysis\",\"datePublished\":\"2026-07-04T19:24:47+00:00\",\"dateModified\":\"2026-07-04T19:31:02+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/\"},\"wordCount\":1007,\"image\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\",\"articleSection\":[\"CP Weekly Challenge\"],\"inLanguage\":\"zh-CN\"},{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/\",\"url\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/\",\"name\":\"CCC 2023 J5 - Word Hunt Solution & Analysis - Accel Thinking\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#primaryimage\"},\"image\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#primaryimage\"},\"thumbnailUrl\":\"https:\\\/\\\/accelthinking.com\\\/wp-content\\\/uploads\\\/2026\\\/06\\\/logo-dark-cropped-51.png\",\"datePublished\":\"2026-07-04T19:24:47+00:00\",\"dateModified\":\"2026-07-04T19:31:02+00:00\",\"author\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/#\\\/schema\\\/person\\\/bb7b104098a9c6c91f4fe54c4ab4a348\"},\"breadcrumb\":{\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#breadcrumb\"},\"inLanguage\":\"zh-CN\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"zh-CN\",\"@id\":\"https:\\\/\\\/accelthinking.com\\\/ccc-2023-j5-word-hunt-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\\\/ccc-2023-j5-word-hunt-solution-analysis\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/accelthinking.com\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"CCC 2023 J5 &#8211; Word Hunt Solution &#038; 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":"CCC 2023 J5 - Word Hunt Solution & Analysis - Accel Thinking","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\/ccc-2023-j5-word-hunt-solution-analysis\/","og_locale":"zh_CN","og_type":"article","og_title":"CCC 2023 J5 - Word Hunt Solution & Analysis - Accel Thinking","og_description":"HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With Us &#9776; HomeSolutionsCP AcademyAI LiteracyResourcesAboutContactPartner With UsClose HomeSolutionsCP AcademyAI LiteracyResourcesAboutContact Partner With Us CP Weekly Challenge [&hellip;]","og_url":"https:\/\/accelthinking.com\/zh_cn\/ccc-2023-j5-word-hunt-solution-analysis\/","og_site_name":"Accel Thinking","article_published_time":"2026-07-04T19:24:47+00:00","article_modified_time":"2026-07-04T19:31:02+00:00","og_image":[{"url":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","type":"","width":"","height":""}],"author":"ATI Builder","twitter_card":"summary_large_image","twitter_misc":{"Written by":"ATI Builder","Est. reading time":"9 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/#article","isPartOf":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/"},"author":{"name":"ATI Builder","@id":"https:\/\/accelthinking.com\/#\/schema\/person\/bb7b104098a9c6c91f4fe54c4ab4a348"},"headline":"CCC 2023 J5 &#8211; Word Hunt Solution &#038; Analysis","datePublished":"2026-07-04T19:24:47+00:00","dateModified":"2026-07-04T19:31:02+00:00","mainEntityOfPage":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/"},"wordCount":1007,"image":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/#primaryimage"},"thumbnailUrl":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","articleSection":["CP Weekly Challenge"],"inLanguage":"zh-CN"},{"@type":"WebPage","@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/","url":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/","name":"CCC 2023 J5 - Word Hunt Solution & Analysis - Accel Thinking","isPartOf":{"@id":"https:\/\/accelthinking.com\/#website"},"primaryImageOfPage":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/#primaryimage"},"image":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/#primaryimage"},"thumbnailUrl":"https:\/\/accelthinking.com\/wp-content\/uploads\/2026\/06\/logo-dark-cropped-51.png","datePublished":"2026-07-04T19:24:47+00:00","dateModified":"2026-07-04T19:31:02+00:00","author":{"@id":"https:\/\/accelthinking.com\/#\/schema\/person\/bb7b104098a9c6c91f4fe54c4ab4a348"},"breadcrumb":{"@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/#breadcrumb"},"inLanguage":"zh-CN","potentialAction":[{"@type":"ReadAction","target":["https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-solution-analysis\/"]}]},{"@type":"ImageObject","inLanguage":"zh-CN","@id":"https:\/\/accelthinking.com\/ccc-2023-j5-word-hunt-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\/ccc-2023-j5-word-hunt-solution-analysis\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/accelthinking.com\/"},{"@type":"ListItem","position":2,"name":"CCC 2023 J5 &#8211; Word Hunt Solution &#038; 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_featured_media_url":"","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1233","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=1233"}],"version-history":[{"count":1,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1233\/revisions"}],"predecessor-version":[{"id":1234,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/posts\/1233\/revisions\/1234"}],"wp:attachment":[{"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/media?parent=1233"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/categories?post=1233"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/accelthinking.com\/zh_cn\/wp-json\/wp\/v2\/tags?post=1233"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}