Files
wehub-resource-sync dde272c4b8
i18n - Build Validation / Validate i18n Builds (24) (push) Has been cancelled
CI - Node.js / Lint (24) (push) Has been cancelled
CI - Node.js / Build (24) (push) Has been cancelled
CI - Node.js / Test (24) (push) Has been cancelled
CI - Node.js / Test - Upcoming Changes (24) (push) Has been cancelled
CI - Node.js / Test - i18n (italian, 24) (push) Has been cancelled
CI - Node.js / Test - i18n (portuguese, 24) (push) Has been cancelled
CD - Docker - GHCR Images / Build and Push Images (push) Has been cancelled
chore: import upstream snapshot with attribution
2026-07-13 11:55:53 +08:00

112 lines
2.9 KiB
Markdown

---
id: 699c8e045ee7cb94ed2322d7
title: "Challenge 216: Pi Day"
challengeType: 29
dashedName: challenge-216
---
# --description--
Happy pi (π) day!
Given an integer (`n`), where `n` is between 1 and 1000 (inclusive), return the `n`th decimal of π.
- Make sure to return a number not a string.
π with its first five decimals is 3.14159. So given `5` for example, return `9`, the fifth decimal.
You may have to find the first 1000 decimals of π somewhere.
# --hints--
`get_pi_decimal(5)` should return `9`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(5), 9)`)
}})
```
`get_pi_decimal(10)` should return `5`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(10), 5)`)
}})
```
`get_pi_decimal(22)` should return `6`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(22), 6)`)
}})
```
`get_pi_decimal(39)` should return `7`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(39), 7)`)
}})
```
`get_pi_decimal(76)` should return `2`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(76), 2)`)
}})
```
`get_pi_decimal(384)` should return `4`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(384), 4)`)
}})
```
`get_pi_decimal(601)` should return `0`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(601), 0)`)
}})
```
`get_pi_decimal(1000)` should return `9`.
```js
({test: () => { runPython(`
from unittest import TestCase
TestCase().assertEqual(get_pi_decimal(1000), 9)`)
}})
```
# --seed--
## --seed-contents--
```py
def get_pi_decimal(n):
return n
```
# --solutions--
```py
def get_pi_decimal(n):
pi = "31415926535897932384626433832795028841971693993751058209749445923078164062862089986280348253421170679821480865132823066470938446095505822317253594081284811174502841027019385211055596446229489549303819644288109756659334461284756482337867831652712019091456485669234603486104543266482133936072602491412737245870066063155881748815209209628292540917153643678925903600113305305488204665213841469519415116094330572703657595919530921861173819326117931051185480744623799627495673518857527248912279381830119491298336733624406566430860213949463952247371907021798609437027705392171762931767523846748184676694051320005681271452635608277857713427577896091736371787214684409012249534301465495853710507922796892589235420199561121290219608640344181598136297747713099605187072113499999983729780499510597317328160963185950244594553469083026425223082533446850352619311881710100031378387528865875332083814206171776691473035982534904287554687311595628638823537875937519577818577805321712268066130019278766111959092164201989"
return int(pi[n])
```