mooon๐ŸŒ™
STUDY
mooon๐ŸŒ™
์ „์ฒด ๋ฐฉ๋ฌธ์ž
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (170)
    • ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ (147)
      • ๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜ (53)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] Lv1 (13)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] ์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ ์ž…๋ฌธ (54)
      • [ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค] SQL ๊ณ ๋“์  Kit (27)
    • BACK (4)
      • Spring (3)
      • PHP (0)
    • FRONT (5)
    • DevOps (8)
      • Jenkins (8)
    • GitHub๐ŸŒฑ (2)
    • ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค (1)
      • SQL (1)
    • Error ๐Ÿ’ฅ (0)
      • php (2)
    • ๐Ÿ˜‹ (1)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • โญ ๊นƒํ—ˆ๋ธŒ
  • ๐Ÿ’• ๋ฐฉ๋ช…๋ก
  • ๐Ÿ’ฅ ํƒœ๊ทธ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • ์ฝ”๋”ฉํ…Œ์ŠคํŠธ ์ž…๋ฌธ
  • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค
  • Python
  • c++
  • ๋ฐฑ์ค€
  • ์•Œ๊ณ ๋ฆฌ์ฆ˜
  • ๋‹ค์ด๋‚˜๋ฏน ํ”„๋กœ๊ทธ๋ž˜๋ฐ
  • SQL ๊ณ ๋“์  Kit
  • SQL
  • DevOps

์ตœ๊ทผ ๊ธ€

250x250
hELLO ยท Designed By ์ •์ƒ์šฐ.
mooon๐ŸŒ™

STUDY

๋ฐฑ์ค€ 2217 _ ๋กœํ”„
์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜

๋ฐฑ์ค€ 2217 _ ๋กœํ”„

2021. 1. 9. 18:20
728x90

www.acmicpc.net/problem/2217

 

2217๋ฒˆ: ๋กœํ”„

N(1 ≤ N ≤ 100,000)๊ฐœ์˜ ๋กœํ”„๊ฐ€ ์žˆ๋‹ค. ์ด ๋กœํ”„๋ฅผ ์ด์šฉํ•˜์—ฌ ์ด๋Ÿฐ ์ €๋Ÿฐ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ์ˆ˜ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋กœํ”„๋Š” ๊ทธ ๊ตต๊ธฐ๋‚˜ ๊ธธ์ด๊ฐ€ ๋‹ค๋ฅด๊ธฐ ๋•Œ๋ฌธ์— ๋“ค ์ˆ˜ ์žˆ๋Š” ๋ฌผ์ฒด์˜ ์ค‘๋Ÿ‰์ด ์„œ๋กœ ๋‹ค๋ฅผ ์ˆ˜๋„ ์žˆ๋‹ค. ํ•˜

www.acmicpc.net


โœจ ๋‚ด ์†Œ์Šค ์ฝ”๋“œ

#include<iostream>
#include <algorithm>
using namespace std;
bool desc(int a, int b) {
	return a > b;
}
int main(void) {
	ios::sync_with_stdio(false);
	cin.tie(NULL);
    
	int N,max_n=0;
	int rope[100000];

	cin >> N;
	
	for (int i = 0; i < N;i++) {
		cin >> rope[i];
	}
	sort(rope,rope+N, desc);

	for (int i = 0; i < N; i++) {
		int result = rope[i] * (i + 1);
		max_n = max(result, max_n);
	}

	cout << max_n;

	return 0;
}

 

๐Ÿ™ ๋ฌธ์ œ ํ•ด์„ค

2217๋ฒˆ์€ ๋ฌธ์ œ๋ฅผ ๋ดค์„ ๋•Œ, ์ฒ˜์Œ์— ์ž˜ ์ดํ•ด๊ฐ€ ๋˜์ง€ ์•Š์•˜๋‹ค

 

๋ฐฑ์ค€ ํ’€์ด์— ์˜ํ•˜๋ฉด

'k๊ฐœ์˜ ๋กœํ”„๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์ค‘๋Ÿ‰์ด w์ธ ๋ฌผ์ฒด๋ฅผ ๋“ค์–ด์˜ฌ๋ฆด ๋•Œ, ๊ฐ๊ฐ์˜ ๋กœํ”„์—๋Š” ๋ชจ๋‘ ๊ณ ๋ฅด๊ฒŒ w/k ๋งŒํผ์˜ ์ค‘๋Ÿ‰์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋œ๋‹ค'

๋ผ๊ณ  ํ–ˆ์„ ๋•Œ, 10๊ณผ 15์˜ ๋กœํ”„๊ฐ€ ์ฃผ์–ด์ง€๋ฉด ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ 20์ด ๋œ๋‹ค๊ณ  ํ•œ๋‹ค

 

์ด๋Š” ๋งŒ์•ฝ์— 30 ์ค‘๋Ÿ‰์˜ ๋ฌผ์ฒด๊ฐ€ ์ฃผ์–ด์ง€๋ฉด 10๊ณผ 15 ๋กœํ”„์— ๊ฐ๊ฐ 15, 15์”ฉ ์ค‘๋Ÿ‰์ด ๊ฑธ๋ฆฌ๊ฒŒ ๋˜๋Š”๋ฐ

15๋กœํ”„๋Š” 15์˜ ์ค‘๋Ÿ‰์„ ๊ฒฌ๋”œ ์ˆ˜ ์žˆ์ง€๋งŒ, 10์€ 15์˜ ์ค‘๋Ÿ‰์„ ๋ฐ›์œผ๋ฉด ๊ฒฌ๋”œ ์ˆ˜ ์—†๊ฒŒ ๋œ๋‹ค

 

๋”ฐ๋ผ์„œ, ์—ฐ๊ฒฐํ•  ๋กœํ”„์˜ ๊ฐœ์ˆ˜๋Š” 2๊ฐœ์ด๊ณ  ๋กœํ”„๋“ค ์ค‘ ๊ฐ€์žฅ ์ž‘์€ ๊ฐ’์ธ 10์ด๊ธฐ ๋•Œ๋ฌธ์—

์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ 10 * 2 ์ธ 20์ด ๋˜๊ฒŒ ๋œ๋‹ค

์ด๋ฅผ ๋ฐ”ํƒ•์œผ๋กœ min(rope) * k๊ฐ€ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์ด ๋  ๊ฒƒ์ž„์„ ์ง์ž‘ํ•  ์ˆ˜ ์žˆ์—ˆ๋‹ค

 

 

 

๐ŸŒฑ ์ตœ๋Œ€ ์ค‘๋Ÿ‰ ๊ตฌํ•˜๊ธฐ

sort(rope,rope+N, desc);

 

์šฐ์„  'algorithm' ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ sort ํ•จ์ˆ˜๋ฅผ ์ด์šฉํ•˜์—ฌ ๋กœํ”„๋ฅผ ๋‚ด๋ฆผ์ฐจ์ˆœ์œผ๋กœ ์ •๋ ฌํ•ด์ฃผ์—ˆ๋‹ค

๊ทธ๋Ÿฌ๋ฉด ๊ฐ€์žฅ ์ค‘๋Ÿ‰์ด ํฐ ๋กœํ”„๋ถ€ํ„ฐ ์ค‘๋Ÿ‰์ด ์ž‘์€ ๋กœํ”„ ์ˆœ์œผ๋กœ ์ •๋ ฌ์ด ๋˜๊ฒŒ ๋˜๋Š”๋ฐ

 

for (int i = 0; i < N; i++) {
	int result = rope[i] * (i + 1);
	max_n = max(result, max_n);
}

 

๋‹ค์Œ๊ณผ ๊ฐ™์ด ํ˜„์žฌ ๋กœํ”„์˜ ์ค‘๋Ÿ‰๊ณผ ํ˜„์žฌ ์—ฐ๊ฒฐ๋œ ๋กœํ”„์˜ ๊ฐœ์ˆ˜๋ฅผ ๊ณฑํ•ด์ค€ ๋‹ค์Œ์— ํ•ด๋‹น ์ตœ๋Œ€ ์ค‘๋Ÿ‰์ด max์ธ์ง€ ๋น„๊ตํ•˜์—ฌ ๋‹ต์„ ๊ตฌํ•ด์ฃผ๋ฉด ๊ฐ„๋‹จํ•˜๊ฒŒ ํ’€๋ฆฌ๋Š” ๋ฌธ์ œ์˜€๋‹ค

 

์˜ˆ๋ฅผ ๋“ค์–ด,

[15, 30, 10, 20, 25] ๋ผ๋Š” ๋กœํ”„๊ฐ€ ์ฃผ์–ด์ง„๋‹ค๊ณ  ๊ฐ€์ •ํ•ด๋ณด์ž

์ด๋ฅผ ์ •๋ ฌํ•˜๋ฉด [30, 25, 20, 15, 10]์˜ ์ˆœ์œผ๋กœ ๋ฐ”๋€Œ๊ฒŒ ๋œ๋‹ค

 

30 * 1 = 30์œผ๋กœ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ 30์ด ๋œ๋‹ค

25 * 2 = 50์œผ๋กœ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ 50์ด ๋œ๋‹ค

20 * 3 = 60์œผ๋กœ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ 60์ด ๋œ๋‹ค

15 * 4 = 60์œผ๋กœ ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ ๊ทธ๋Œ€๋กœ 60์ด ๋œ๋‹ค

10 * 5 = 50์œผ๋กœ, ์ด์ „ ์ตœ๋Œ€ ์ค‘๋Ÿ‰๋ณด๋‹ค ์ž‘๊ธฐ ๋•Œ๋ฌธ์— ์ตœ๋Œ€ ์ค‘๋Ÿ‰์€ ๊ทธ๋Œ€๋กœ 60์ด ๋œ๋‹ค

 

 

 

โญ ๋ฌธ์ œ ํ’€์ด ๊ฒฐ๊ณผ

728x90
์ €์ž‘์žํ‘œ์‹œ ๋น„์˜๋ฆฌ ๋ณ€๊ฒฝ๊ธˆ์ง€ (์ƒˆ์ฐฝ์—ด๋ฆผ)
    '์ฝ”๋”ฉ ํ…Œ์ŠคํŠธ/๋ฐฑ์ค€ ์•Œ๊ณ ๋ฆฌ์ฆ˜' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€
    • ๋ฐฑ์ค€ 7662 _ ์ด์ค‘ ์šฐ์„ ์ˆœ์œ„ ํ
    • ๋ฐฑ์ค€ 11404 _ ํ”Œ๋กœ์ด๋“œ
    • ๋ฐฑ์ค€ 14889 _ ์Šคํƒ€ํŠธ์™€ ๋งํฌ
    • ๋ฐฑ์ค€ 11000 _ ๊ฐ•์˜์‹ค ๋ฐฐ์ •
    mooon๐ŸŒ™
    mooon๐ŸŒ™
    ๊ฐœ๋ฐœ ๊ณต๋ถ€ ๊ธฐ๋ก

    ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”