Skip to content

Commit a2ab257

Browse files
committed
feat:구현
1 parent 8848a76 commit a2ab257

File tree

10 files changed

+174
-10
lines changed

10 files changed

+174
-10
lines changed

Week3/개인/두원사이의_정수쌍/suhyun.py

-2
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ def solution(r1, r2):
88
for r in range(1, r2):
99
if r < r1:
1010
answer += (getDotCnt(r, r2, "r2") - getDotCnt(r, r1, "r1"))
11-
print(answer)
1211
else:
1312
answer += getDotCnt(r, r2, "r2")
14-
print(answer)
1513

1614
answer = answer * 4
1715
answer += (r2 - r1 + 1) * 4

Week3/공통/햄버거만들기/suhyun.py

+2
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,8 @@
2121
# 테스트 17 〉 통과 (0.00ms, 10.3MB)
2222
# 테스트 18 〉 통과 (0.01ms, 10.1MB)
2323

24+
# 파이썬에서 문자열.pop(i)은 시간복잡도가 O(N)이다.
25+
2426
def solution(ingredient):
2527
answer = 0
2628

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
def solution(n):
2+
3+
for k in range(2, n):
4+
if n % k == 1:
5+
return k
6+
7+
print(solution(12))

Week4/공통/삼총사/suhyun.java

+20
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
package Week4.공통.삼총사;
2+
public class suhyun {
3+
public int solution(int[] number) {
4+
int answer = 0;
5+
6+
for(int i=0; i<number.length; i++){
7+
int sum = 0;
8+
for(int j=i+1; j<number.length; j++){
9+
for(int k=j+1; k<number.length; k++){
10+
sum += number[i] + number[j] + number[k];
11+
if(sum == 0){
12+
answer += 1;
13+
}
14+
sum = 0;
15+
}
16+
}
17+
}
18+
return answer;
19+
}
20+
}

Week4/공통/삼총사/suhyun.py

+16
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
def solution(number):
2+
answer = 0
3+
4+
sum = 0
5+
for i in range(len(number)):
6+
for j in range(i+1, len(number)):
7+
for k in range(j+1, len(number)):
8+
sum += number[i] + number[j] + number[k]
9+
if sum == 0:
10+
answer += 1
11+
sum = 0
12+
13+
return answer
14+
15+
number = [-2, 3, 0, 2, -5]
16+
print(solution(number))

Week4/공통/삼총사/test.java

-4
This file was deleted.

Week4/공통/숫자짝꿍/suhyun.java

+61
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,61 @@
1+
package Week4.공통.숫자짝꿍;
2+
3+
import java.util.ArrayList;
4+
import java.util.Arrays;
5+
import java.util.Collections;
6+
import java.util.List;
7+
8+
//자바에서 숫자 3을 char형의 '3'으로 변환하려면,
9+
//int a = 3;
10+
//char b = (char)(a + '0')
11+
//b -> '3'이 대입된다.
12+
13+
//자바에서 제네릭타입의 내림차순 정렬은 다음과 같다.
14+
//Collections.sort(배열, Collections.reverseOrder());
15+
16+
//시간초과코드
17+
public class suhyun {
18+
public String solution(String X, String Y) {
19+
String answer = "";
20+
List<Integer> a = new ArrayList<>();
21+
boolean z = false;
22+
for(int i=0; i<10; i++){
23+
int cntX = 0, cntY = 0;
24+
if(X.contains(String.valueOf(i)) && Y.contains(String.valueOf(i))) {
25+
for(int j=0; j<X.length(); j++){
26+
if(X.charAt(j) == (char)(i + '0')){
27+
cntX += 1;
28+
}
29+
}
30+
for(int j=0; j<Y.length(); j++){
31+
if(Y.charAt(j) == (char)(i + '0')){
32+
cntY += 1;
33+
}
34+
}
35+
if(cntX >= 1 && cntY >= 1){
36+
z = true;
37+
for(int l=0; l<Math.min(cntX, cntY); l++){
38+
a.add(i);
39+
}
40+
}
41+
}
42+
43+
}
44+
45+
Collections.sort(a, Collections.reverseOrder());
46+
47+
for(int i=0; i<a.size(); i++){
48+
answer += a.get(i);
49+
}
50+
51+
if(!z){
52+
answer += "-1";
53+
}
54+
55+
if(answer.length() > 1 && answer.charAt(0) == '0'){
56+
answer = "0";
57+
}
58+
59+
return answer;
60+
}
61+
}

Week4/공통/숫자짝꿍/suhyun.py

+33
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
def solution(X, Y):
2+
answer = ''
3+
ans = []
4+
5+
z = False
6+
for k in range(10):
7+
if str(k) in X and str(k) in Y:
8+
z = True
9+
if Y.count(str(k)) > 1 or X.count(str(k)) > 1:
10+
cnt = min(Y.count(str(k)), X.count(str(k)))
11+
for _ in range(cnt):
12+
ans.append(str(k))
13+
else:
14+
ans.append(str(k))
15+
# print(str(k))
16+
# print(X.count(str(k)))
17+
# print(Y.count(str(k)))
18+
# print("=====")
19+
20+
ans.sort(reverse=True)
21+
if z == False:
22+
answer = "-1"
23+
24+
# print(ans)
25+
for a in ans:
26+
answer += a
27+
28+
if len(answer) > 1 and answer[0] == "0":
29+
answer = "0"
30+
31+
return answer
32+
33+
print(solution("1000", "100"))
+35
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
package Week4.공통.숫자짝꿍;
2+
3+
public class suhyun1 {
4+
public String solution(String X, String Y) {
5+
StringBuilder sb = new StringBuilder();
6+
int[] x = {0,0,0,0,0,0,0,0,0,0};
7+
int[] y = {0,0,0,0,0,0,0,0,0,0};
8+
9+
for(int i=0; i<X.length(); i++){
10+
int z = X.charAt(i) - '0';
11+
x[z] += 1;
12+
}
13+
14+
for(int i=0; i<Y.length(); i++){
15+
int z = Y.charAt(i) - '0';
16+
y[z] += 1;
17+
}
18+
19+
for(int i=9; i>-1; i--){
20+
if(x[i] > 0 && y[i] > 0){
21+
for(int j=0; j<Math.min(x[i], y[i]); j++){
22+
sb.append(String.valueOf(i));
23+
}
24+
}
25+
}
26+
27+
if("".equals(sb.toString())){
28+
return "-1";
29+
} else if(sb.length() > 0 && sb.toString().charAt(0) == '0'){
30+
return "0";
31+
} else {
32+
return sb.toString();
33+
}
34+
}
35+
}

Week4/공통/숫자짝꿍/test.java

-4
This file was deleted.

0 commit comments

Comments
 (0)