๊ธฐ๋ฅ:
A, B ๋ ์ ์ ์ค ๋ ํฐ ์๋ฅผ ์ถ๋ ฅ
A, B๊ฐ ๊ฐ๋ค๋ฉด โeqโ๋ฅผ ์ถ๋ ฅ
๋ฏธ์ :
- 10, 20 ์ค ๋ ํฐ์๋ฅผ ์ถ๋ ฅ
- 10,10์ โeqโ ์ถ๋ ฅ
์ถ๋ ฅ์์:
20
eq
void main() {
printInt(10, 20); //์ธ์ ์ ๋ฌ
printInt(10, 10);
}
void printInt(int a, int b) {
if (a > b || a < b) {
//์
๋ ฅ ๋ฐ์ ์ซ์ ๋ ์ค ์ด๋ ๊ฒ์ด ๋ ํด์ง ๋ชจ๋ฅด๋, or ์ฐ์ฐ์๋ก 2๊ฐ์ง์ ์กฐ๊ฑด์ ๋ฃ์ด์ค๋ค.
print(a > b ? a.toString() : b.toString());
//a๊ฐ b๋ณด๋ค ํฌ๋ฉด? print(a), a๊ฐ b๋ณด๋ค ์์ผ๋ฉด? print(b);
} else if (a == b) {
print('eq');
// a ์ b์ ์ซ์๊ฐ ๊ฐ์ ๊ฒฝ์ฐ์๋ print('eq')
}
}
//flutter: 20
//flutter: eq
๋น์ ์ ํ์ฌ๋ฅผ ๋ํํ์ฌ 2๊ฐ์ ์ซ์๋ฅผ ๊ณจ๋ผ์ผ ํฉ๋๋ค. ๋ ์๊ฐ ๋ชจ๋ ์ง์์ด๋ฉด
ํ์ํ(ํ์๋ฅผ ์ข์ํ๋ ์ฌ๋๋ค์ ๋ชจ์)๊ฐ ์ซ์ดํฉ๋๋ค. ๋ ์๊ฐ ๋ชจ๋ ํ์์ด๋ฉด ์ง์ํ๊ฐ
์ซ์ดํฉ๋๋ค. ๋น์ ์ ์ง์ ํ๋ ํ์ ํ๋๋ฅผ ๊ณจ๋ผ์ ๋ชจ๋๋ฅผ ๋ง์กฑ์์ผ์ผ ํฉ๋๋ค.
์ค๋ช :
N, M ๋ ์ ์๊ฐ
์ง์์ ํ์์ ์์ด๋ฉด โYESโ, ๊ทธ๋ ์ง ์์ผ๋ฉด โNOโ๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
๋ฏธ์ :
- 30, 15 ์ผ ๋
- 12, 40 ์ผ ๋
์ถ๋ ฅ์์:
YES
NO
void main() {
printInt(30, 15);
printInt(12, 40);
}
void printInt(int a, int b) {
int c = a + b;
// ํ + ํ , ์ง + ์ง = ์ง
// ํ + ์ง = ํ
if (c % 2 == 1) {
// c์ ์กฐ๊ฑด, /2์ ๋๋จธ์ง๊ฐ 1์ผ ๊ฒฝ์ฐ, ํ์
// == ํ, ์ง์ด๋ผ๋ ๋ป
print('YES');
} else if (c % 2 == 0){
// c์ ์กฐ๊ฑด, /2์ ๋๋จธ์ง๊ฐ 0์ผ ๊ฒฝ์ฐ, ์ง์
// == ํ+ํ, ๋๋ ์ง+์ง์ด๋ผ๋ ๋ป
print('No');
}
}
//flutter: YES
//flutter: NO
๋น์ ์ ์ด๋ฆ๊ณผ ์ฐ๋ฝ์ฒ๋ฅผ ํ์ค๋ก ์ ๋ฆฌํ๊ณ ์๋๋ฐ ๊ทธ ์์ด 1์ต๊ฐ๋ผ๋ฉด? ์ด๋ป๊ฒ ํ ๊น์?
๋ฏธ์ :
- โ๋ชจ๋์ฐโ , โ010โ, โ1234โ, โ5678โ ์ ํ์ค๋ก ๋ง๋ค์ด ๋ณด์์
์ถ๋ ฅ์์:
๋ชจ๋์ฐ 010-1234-5678
void main() {
printContact('๋ชจ๋์ฐ', '010', '1234', '5678');
printContact('์์ธ์', '010', '6428', '0139');
}
void printContact(String name, String prefix, String middle, String last) {
print('$name: $prefix-$middle-$last');
}
//๋ชจ๋์ฐ: 10-1234-5678
//์ ํํ๋ 0์ด ์๋ ์ซ์๋ฅผ ์ ์๋ก ์ ์ธํ๋ฉด(์: 010)
//ํ๋ก๊ทธ๋๋ฐ ์ธ์ด๋ ๊ทธ๊ฒ์ 8์ง์(8์ง๋ฒ ์ซ์)๋ก ํด์ํฉ๋๋ค.
//flutter: ๋ชจ๋์ฐ: 010-1234-5678
//flutter: ์์ธ์: 010-6428-0139
๋น์ ์ ์ด๋ฑํ๊ต ์ํ์ ์๋์ ๋๋ค. ํ์๋ค์๊ฒ ๋ฑ์ฐจ์์ด์ ๋ํ ์ค๋ช ์๋ฃ๋ฅผ ๋ง๋ค๊ธฐ ์ํด
์์ ๋ฅผ ๋ง๋ค์ด์ผ ํฉ๋๋ค. ๋งค๋ฒ ๋ง๋ค๊ธฐ ์ด๋ ค์ ๋ฑ์ฐจ์์ด ์์ ์์ฑ๊ธฐ๋ฅผ ๋ง๋ค๋ ค๊ณ ํฉ๋๋ค.
์ด๋ป๊ฒ ํ ๊น์?
์ค๋ช :
- ๋ฑ์ฐจ์์ด์ด๋?
5 8 11 14 17 20 23 26 29 32
์ฒซ๋ฒ์งธ ์ซ์๊ฐ 5์์ 3 ์ฉ ์ฆ๊ฐ ํด๊ฐ๋ ๊ฒ์ ์ ์ ์์ต๋๋ค.
์ผ๋ฐ์ ์ผ๋ก ์ด๊ฒ์ ์ฒซํญ์ด 5, ๊ณต์ฐจ๊ฐ 3์ธ ๋ฑ์ฐจ์์ด์ด๋ผ๊ณ ํฉ๋๋ค.
์ด๋ฐ ์์ด์ ์ถ๋ ฅํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค์ด ๋ณด์.
๋ฏธ์ :
- ์ฒซ ํญ 5, ๊ณต์ฐจ 10์ธ ๋ฑ์ฐจ์์ด์ 10๋ฒ์งธ๊น์ง ์ถ๋ ฅ ํด ๋ณด์ธ์
์ถ๋ ฅ์์:
5 15 25 35 45 55 65 75 85 95
void main() {
int firstTerm = 5; // ์ฒซ ํญ: ๋ฑ์ฐจ์์ด์์ ์ฒซ ๋ฒ์งธ ์ซ์
int commonDifference = 10; // ๊ณต์ฐจ: ์ฐ์๋๋ ํญ๋ค ์ฌ์ด์ ์ผ์ ํ ์ฐจ์ด
int numberOfTerms = 10; // ํญ์ ์: ์์ฑํ ๋ฑ์ฐจ์์ด์ ํญ ๊ฐ์๋ฅผ ์ ์ํฉ๋๋ค.
// for ๋ฃจํ๋ฅผ ์ฌ์ฉํ์ฌ ๋ฑ์ฐจ์์ด์ ๊ฐ ํญ์ ๊ณ์ฐํ๊ณ ์ถ๋ ฅํฉ๋๋ค.
for (int i = 0; i < numberOfTerms; i++) {
int count = i * commonDifference;
// ํญ์ ์ * ๊ณต์ฐจ
// ex) 1 * 10,, 2 * 10 ,, 3 * 10 ,,
int term = firstTerm + count; // ์ฒซ ํญ์ ๊ณต์ฐจ์ ์ดํฉ์ ๋ํ์ฌ i๋ฒ์งธ ํญ์ ๊ณ์ฐ
// 5 + 10 ,, 5 + 20 ,, 5 + 30 ,,
print(term); // ๊ณ์ฐ๋ i๋ฒ์งธ ํญ์ ์ถ๋ ฅ
}
}
๋น์ ์ 1, 2, 3, 4, 5์ ์ซ์๊ฐ ์ ํ 5 ์ข ๋ฅ์ ์นด๋๋ฅผ ๋ชจ์ผ๊ณ ์์ต๋๋ค.
4๋ฒ์งธ๊น์ง ๋ชจ์ฌ์ 1์ฅ๋ง ๋ ๋ชจ์ผ๋ฉด ๋๋ ์ํฉ์ ์นด๋๊ฐ ์์ฌ ๋ฒ๋ ธ์ต๋๋ค.
4์ฅ์ ์นด๋ ์ ๋ณด๋ ์ค ๋ฐ๊ฟ์ผ๋ก ๊ตฌ๋ถํ์ฌ ์ ๋ ฅ๋๋ฏ๋ก 1~5์ ์นด๋ ์ค ๋ถ์กฑํ ์นด๋์ ์ซ์๋ฅผ
์ถ๋ ฅ ํฉ๋๋ค.
๋ฏธ์ :
- ๋ฆฌ์คํธ [1,3,2,5] ์ค ๋น ์ง ์๋ฅผ ์ถ๋ ฅ ํ์์ค
์ถ๋ ฅ์์:
4
void main() {
// ์๋์ ์นด๋ ๋ฆฌ์คํธ์, ์์ธ ์นด๋ ๋ฆฌ์คํธ 2๊ฐ์ง ๋น๊ต
List<int> numberCards = [1, 2, 3, 4, 5];
// ์๋์ ์นด๋๋ฆฌ์คํธ
List<int> haveNumberCards = [1, 3, 2, 5];
// ์์ธ ์นด๋ ๋ฆฌ์คํธ
for (int number in numberCards) {
//์๋์ ์นด๋ ๋ฆฌ์คํธ์ ์์, int number์ ํ๋ํ๋ ๋์
if (!haveNumberCards.contains(number))
// haveNumberCards์ number๊ฐ ํฌํจ์ด ๋์ด ์์ผ๋ฉด,
// !haveNumberCards์ number๊ฐ ํฌํจ์ด ๋์ด ์์ง ์์ผ๋ฉด,
print(number);
// number๋ฅผ print ํด๋ผ!
}
๋น์ ์ ์ ๋ ฅ๋ ์๋ฅผ ํ๋ณํ๋ ํ๋ก๊ทธ๋จ์ ๋ง๋ค๊ณ ์์ต๋๋ค. ํ๋ก๊ทธ๋จ์ ์ ๋ ฅ๋ ์ซ์์ ๊ฐ
์๋ฆฌ ์๊ฐ ๋ชจ๋ ๊ฐ์ ์ซ์๋ผ๋ฉด ๊ทธ ์ซ์๋ฅผ ๊ทธ๋๋ก ์ถ๋ ฅํ๊ณ , ์๋๋ผ๋ฉด "No"๋ฅผ ์ถ๋ ฅํฉ๋๋ค.
๋ฏธ์ :
- 777 ์ผ๋
- 725 ์ผ๋
์ถ๋ ฅ์์:
777
No
void main() {
printResult(777); // ๋ชจ๋ ์๋ฆฌ์๊ฐ ๊ฐ์ ๊ฒฝ์ฐ
printResult(123); // ๋ชจ๋ ์๋ฆฌ์๊ฐ ๊ฐ์ง ์์ ๊ฒฝ์ฐ
}
void printResult(int number) {
String numberStr = number.toString();
bool allDigitsSame =
numberStr.split('').every((digit) => digit == numberStr[0]);
//split('') ๋ฉ์๋๋ ์ด ๋ฌธ์์ด์ ๊ฐ๊ฐ์ ๋ฌธ์๋ก ๋ถ๋ฆฌํ์ฌ ๋ฆฌ์คํธ๋ก ๋ง๋ญ๋๋ค.
//์๋ฅผ ๋ค์ด, '777'์ ['7', '7', '7']๋ก ๋ณํ๋ฉ๋๋ค.
//every ๋ฉ์๋๋ ๋ฆฌ์คํธ์ ๋ชจ๋ ์์๊ฐ ์ฃผ์ด์ง ์กฐ๊ฑด์ ๋ง์กฑํ๋์ง ํ์ธํฉ๋๋ค.
//์ฌ๊ธฐ์ digit๋ split์ผ๋ก ์์ฑ๋ ๋ฆฌ์คํธ์ ๊ฐ ์์ (์ฆ, ๊ฐ ์๋ฆฟ์)๋ฅผ ๋ํ๋
๋๋ค.
//digit == numberStr[0]๋ ํ์ฌ ์๋ฆฟ์(digit)๊ฐ ๋ฌธ์์ด์ ์ฒซ ๋ฒ์งธ ๋ฌธ์(numberStr[0])์ ๊ฐ์์ง๋ฅผ ๋น๊ตํฉ๋๋ค.
if (allDigitsSame) {
print('$number');
//allDigitsSame์ด true ๋ฉด ์ซ์ ๋ฐํ
} else {
print('No');
//allDigitsSame์ด false ๋ฉด No ๋ฐํ
}
}
๋น์ ์ ๊ธฐ์์ฒญ ๋ฐ์ดํฐ ๋ถ์๊ฐ๋ก์จ ํํ ์๋ฅ ๊ฐ๊ฒฉ์ ๋ํด ๋ฐ์ดํฐ๋ฅผ ๋ง๋ค์ด์ผ ํ๋ค.
์ํ๋ก 5๊ฐ์ ํํ ์๋ฅ์ผ ์ ๋ณด๊ฐ ์ฃผ์ด์ง๋ฉด, ๋ค์ ํํ์ด ๋ช ์ผ ๊ฐ๊ฒฉ์ผ๋ก ๋ฐ์ํ๋์ง ์ผ์๋ฅผ
๊ตฌํ๋ ํ๋ก๊ทธ๋จ์ ์์ฑํ์์ค.
๋ฏธ์ :
- ํํ ์๋ฅ์ผ [5,8,19,25,31]
์ถ๋ ฅ์์:
3
11
6
6
void main() {
List<int> currentHurricane = [5, 8, 19, 25,31];
for(int i = 0; i < currentHurricane.length - 1; i++) {
int index = currentHurricane[i + 1] - currentHurricane[i];
print(index);
}
}
์ค๋์ ๋นผ๋นผ๋ก ๋ฐ์ด ํํฐ๋ฅผ ํ๋ ๋ ์ ๋๋ค. ํ์ง๋ง ๋นผ๋นผ๋ก๊ฐ 11๊ฐ ์ด์ ์์ด์ผ ํํฐ๋ฅผ ์ด ์
์์ต๋๋ค.
๊ธฐ๋ฅ:
๋นผ๋นผ๋ก 1๊ฐ๋ "1"๋ก ํ์ํ๋ฉฐ 1๋ก ์ฐ์๋๋ ๋ฌธ์์ด์ด ์ฃผ์ด์ง๋๋ค.
ํํฐ๋ฅผ ์ด ์ ์์ผ๋ฉด "OK", ํํฐ๋ฅผ ์ด ์ ์๋ค๋ฉด ์์ผ๋ก ์ต์ํ์ ๋ ํ์ํ ๋นผ๋นผ๋ก์ ์๋ฅผ
์ถ๋ ฅํฉ๋๋ค.
๋ฏธ์ :
- 11111111111 ์ผ๋
- 11111 ์ผ๋
์ถ๋ ฅ์์:
OK
6
void main() {
throwParty(11111111111);
throwParty(11111);
}
void throwParty(int a) {
String strNumber = a.toString();
if (strNumber.length >= 11) {
print('OK');
} else {
int b = 11 - strNumber.length;
print(b);
}
}