<문제>

배열 {1,9,4,0,7,1,3,6,2,3}에서 인접한 원소들끼리 이어붙여 여러 정수들을 만들고,

그중 소수를 찾아 소수들 중 최대값을 구하라.

가령, 1, 19, 194, 1940 등등의 수가 만들어 질 수 있음

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
public class Main {
 
    public static void main(String[] args) {
        
        int[] arr = {1,9,4,0,7,1,3,6,2,3};
        // 1개 이상의 연속된 원소들을 이어붙여 1자리 이상의 수를 만들고
        // 그 중 소수를 찾아 그 소수들 중 최대값을 출력
        
        // 원소들을 이어붙여 정수를 만들고
        // 소수인지를 판별하고
        // 그 중 최대값을 찾는다.
        int maxVal = 0// 배열 내 원소들 모두 0모두 크거나 같음
        for (int i = 0; i < arr.length; i++) {
            for (int j = i; j < arr.length; j++) {
            
                //원소들을 이어붙여 정수 만듦
                int val=0;
                for (int k = i; k <= j; k++) {
                    val = val*10 + arr[k];
                }
                
                // 소수인지 판별
                // 그런데, val이 1이면 아래 for문 자체를 거치지 않는다.
                // p는 2부터인데, 조건식의 val이 1이므로 for문 자체를 거치지 않는다.
                boolean isPrime = true;
                for (int p = 2; p*<= val; p++) {
                    if(val % p == 0) {
                        isPrime = false;
                        break;
                    }
                }
                
                //최대값을 찾음
                if(isPrime && val > 1 && maxVal < val) {
                    maxVal = val;
                }
            }
        }
        if(maxVal > 0) {
            System.out.println("가장 큰 소수는 " + maxVal);
        }
        else {
            System.out.println("소수가 존재하지 않습니다.");
        }
        
        
        
        
    }
}
cs

결과는 1940713

<Solution>

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
 
        Scanner sc = new Scanner(System.in);
 
        int n = sc.nextInt();
        int[] data = new int[n];
        for (int i = 0; i < data.length; i++) {
            data[i] = sc.nextInt();
        }
        sc.close();
        //i가 증가함에 따라 maxSum은 값이 변하면 변한 채로 두고
        //sum만 i값이 증가함에 따라 초기화를 계속 시켜서 maxSum을 변화시킬 수 있도록 한다
        int maxSum = 0;
        for (int i = 0; i < data.length; i++) {
            int sum = 0;
            for (int j = i; j < data.length; j++) {
                sum += data[j];
                if (maxSum < sum) {
                    maxSum = sum;
                }
            }
        }
        System.out.println(maxSum);
 
    }
}
cs

최대값은 28!

Theme. 어떤 수가 소수가 인지 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
import java.util.Scanner;
 
public class Main {
 
    public static void main(String[] args) {
 
        Scanner sc = new Scanner(System.in);
        // 어떤 수가 소수인지 확인
        int n = sc.nextInt();
        
        // 어떤 수를 2부터 n/2까지 나눠서 하나라도 나누어 떨어지면 소수가 아니다.
        // n/2 대신 n-1을 넣어도 된다.(어떤 수의 약수는 n/2를 넘을 수 없다)
        // 또한, n/2 대신 sqrt(n)을 넣어도 된다.
        boolean isPrime = true;
        for (int i = 2; i <= n/2; i++) {
            if(n % i == 0) {
                isPrime = false;
                break;
            }
        }
        if(isPrime) {
            System.out.println(n + "은 소수입니다.");
        } else {
            System.out.println(n + "은 소수가 아닙니다.");
        }
        
 
    }
}
cs

 

아무생각 없이 문제만 풀 수 있어서 참 좋은 별찍기...

중간중간 새로운 별 모양을 만들어 내면 갱신하도록 하자!

 

찍으려는 별모양을 각 코드 위에 주석처리 해놓았다.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
import java.util.Scanner;
 
public class Star {
    public static void main(String[] args) {
 
///////////////////////////별 찍기////////////////////
        Scanner sc = new Scanner(System.in);
        int N = sc.nextInt();
/*
 
*****
*****
*****
*****
*****
 
*/
            
for (int i = 0; i < N ; i++) {
    for (int j = 0; j < N; j++) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();        
 
/*
 
**
***
****
***** 
  
*/
 
for(int i = 0; i<N; i++) {
    for (int j = 0; j < i+1; j++) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();
 
/*
 
***** 
****
***
**
*
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = N - i; j > 0; j--) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();
 
/*
5.
*
*** 
***** 
******* 
********* 
 
*/
 
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < 2*+ 1; j++) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();
 
/*
 
*
*** 
*****
***
*
    
*/
 
for (int i = 0; i < N; i++) {
    if (i <= N / 2) {
        for (int j = 0; j < 2*+ 1; j++) {
            System.out.print("*");
        }
        System.out.println();
    } 
    else {
        for (int j = 9 - 2*i; j > 0 ; j--) {
            System.out.print("*");
        } 
        System.out.println();
    } 
}
System.out.println();
 
/*
 
* * *
*
* * *
 
*/
 
for (int i = 0; i < N; i++) {
    if(i % 2 == 0) {
        System.out.print("*");
    }
    else {
        for (int j = 0; j < N; j++) {
            if(j % 2 == 0) {
                System.out.print("*");
            }
            else {
                System.out.print(" ");
            }
        }
    }
    System.out.println();
}
System.out.println();
 
// 중복 문제 지우고 이어서
 
/*
 
*****
 ****
  ***
   **
    *
    
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < i; j++) {
        System.out.print(" ");
    }
    for (int j = 0; j < N - i; j++) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();
 
/*
 
    *
   **
  ***
 ****  
*****      
      
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N - (i+1); j++) {
        System.out.print(" ");
    }
    for (int j = 0; j < i+1; j++) {
        System.out.print("*");
    }
    System.out.println();
}
System.out.println();
 
 
/*
 
*   *
 * *
  *
 * *
*   *
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if(j == i || j == N-1-i) {
            System.out.print("*");
        }
        else {
            System.out.print(" ");
        }
    }
    System.out.println();
}
System.out.println();
 
 
/*
 
!***!
*!*!*
**!**
*!*!*
!***!
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if(j == i || j == N-1-i) {
            System.out.print("!");
        }
        else {
            System.out.print("*");
        }
    }
    System.out.println();
}
System.out.println();
 
/*
 
!***!
 !*!
  !
 !*!
!***!
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if (i < N / 2) {
            if (j == i || j == N - 1 - i) {
                System.out.print("!");
            } else if (j > i && j < N - 1 - i) {
                System.out.print("*");
            } else {
                System.out.print(" ");
            }
        } else {
            if (j == i || j == N - 1 - i) {
                System.out.print("!");
            } else if (j < i && j > N - 1 - i) {
                System.out.print("*");
            } else {
                System.out.print(" ");
            }
 
        }
    }
    System.out.println();
}
System.out.println();
 
/*
 
!   *
 ! *
  !
 * !
*   !
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if(j == i) {
            System.out.print("!");
        }
        else if(j == N-1-i) {
            System.out.print("*");
        }
        else {
            System.out.print(" ");
        }
    }
    System.out.println();
}
System.out.println();
 
 
/*
 
  *
 * *
*   *
 * *
  *
 
*/
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if(i < N/2) {    
            if(j == N/2 - i || j == N/2 +i) {
                System.out.print("*");
            }
            else {
                System.out.print(" ");
            }
        }
        else { 
            if(j == N/2 - (N-1+ i || j == N/2 + (N-1- i ) {
                System.out.print("*");
            }
            else {
                System.out.print(" ");
            }
        }
    }
    System.out.println();
}
System.out.println();
/*
 
  *  
 ***
*****
 ***
  * 
 
 */
 
for (int i = 0; i < N; i++) {
    for (int j = 0; j < N; j++) {
        if(i < N/2) {    
            if(j >= N/2 - i && j <= N/2 +i) {
                System.out.print("*");
            }
            else {
                System.out.print(" ");
            }
        }
        else { 
            if(j >= N/2 - (N-1+ i && j <= N/2 + (N-1- i ) {
                System.out.print("*");
            }
            else {
                System.out.print(" ");
            }
        }
    }
    System.out.println();
}
System.out.println();
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
    }
}
cs

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
use mydb;
 
-- 문제 1 EMPLOYEES Table의 모든 자료를 출력하여라.
select *
from employees;
 
-- 문제 2 EMPLOYEES Table의 컬럼들을 모두 출력하라.
desc employees;
 
-- 문제 3 EMPLOYEES Table에서 사원 번호, 이름, 급여, 담당업무를 출력하여라.
select employee_id as "사원 번호", concat('이름: ', last_name, ' ', first_name) as "이름", salary as "급여", department_id as "담당업무"
from employees;
 
-- 문제 4 모든 종업원의 급여를 $300증가 시키기 위해서 덧셈 연산자를 사용하고 결과에 SALARY+300을 디스플레이 합니다.
select salary + 300 as "SALARY + 300"
from employees;
 
-- 문제 5 EMPLOYEES 테이블에서 사원번호, 이름, 급여, 보너스, 보너스 금액을 출력하여라. 
-- (참고로 보너스는 월급 + (월급*커미션))
 
select employee_id as "사원 번호", concat('이름: ', last_name, ' ', first_name) as "이름", salary as "급여",
comission_pct as "보너스", (salary * commission_pct) as "보너스 금액"
from employees;
 
-- 문제 6 EMPLOYEES 테이블에서 LAST_NAME을 이름으로 SALARY을 급여로 출력하여라.
select last_name as "이름", salary as "급여"
from employees;
 
-- 문제 7 EMPLOYEES 테이블에서 LAST_NAME을 Name으로 SALARY *12 를 Annual Salary(연봉)로 출력하여라
select last_name as "Name", salary * 12 as "Annual Salary(연봉)" 
from employees;
 
-- 문제 8 EMPLOYEES 테이블에서 이름과 업무를 연결하여 출력하여라.
select concat('이름: ', last_name, ' ', first_name, ', ''업무: ', job_id) as "이름과 업무"
from employees;
 
-- 문제 9 EMPLOYEES 테이블에서 이름과 업무를 "KING is a PRESIDENT" 형식으로 출력하여라. 
select concat(last_name, ' is a ', job_id) as "이름과 업무"
from employees;
 
-- 문제 10 EMPLOYEES 테이블에서 이름과 연봉을 "KING: 1 Year salary = 60000" 형식으로 출력하여라.
select concat(last_name, ': 1 Year salary = ', salary * 12) as "이름과 연봉"
from employees;
cs

Q. 편의점에서 물건을 사고 거스름돈을 받으려고 한다. 거스름돈을 5000원권, 1000원권, 500원, 100원, 50원, 10원을 조합하여 받는다고 할 때, 각각 몇 장(개)씩 받게 되는지 프로그램을 작성하라. 

1) 물건가격: 3210원, 지불금액: 10000원

2) 물건가격, 지불금액을 입력하고 그에 따른 결과를 출력 (Scanner 이용)

 

< 1)에 대한 Solution_1 >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
package test;
 
public class MainClass {
 
    public static void main(String[] args) {
        
        int price,myMoney,change; //지불금액, 물건가격, 거스름돈 변수 선언
        price = 3210
        myMoney = 10000;
        System.out.println("물건가격 : " + price + "원");
        System.out.println("지불금액 : " + myMoney + "원");
        change = myMoney - price; // 6790 = 10000 - 3210
        System.out.println("거스름돈 = " + change + "원");
        
        int m5000 ,m1000, m500, m100, m50, m10; // 각 지폐 및 동전 변수 선언
        m5000 = change / 5000// 몫을 계산 6790 / 5000 의 몫은 1
        m1000 = (change % 5000/ 1000// 5000원권으로 거슬러준 후 나머지에 대해 몫을 계산
        m500 = ((change % 5000) % 1000/ 500// 1000원권으로 거슬러준 후 나머지에 대해 몫을 계산
        m100 = (((change % 5000) % 1000) % 500/ 100//이하 반복
        m50 = ((((change % 5000) % 1000) % 500) % 100/ 50;
        m10 = (((((change % 5000) % 1000) % 500) % 100) % 50/ 10;
        
        // 출력
        System.out.println("5000원: " + m5000 + "장");
        System.out.println("1000원: " + m1000 + "장");
        System.out.println("500원: " + m500 + "개");
        System.out.println("100원: " + m100 + "개");
        System.out.println("50원: " + m50 + "개");
        System.out.println("10원: " + m10 + "개");
        
    }
 
}
 
cs

< Console >

 - 출력값은 틀리지 않았으나, 소스 코드 작성 부분에서 몫과 나머지를 구하는 코드가 복잡하다는 단점이 있었다. 간소화하여 다시 한번 풀어보기로 하였다.

 

< 1)에 대한 Solution_2 >

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
package test;
 
public class MainClass {
 
    public static void main(String[] args) {
        
        int price,myMoney,change; //지불금액, 물건가격, 거스름돈 변수 선언
        price = 3210
        myMoney = 10000;
        System.out.println("물건가격 : " + price + "원");
        System.out.println("지불금액 : " + myMoney + "원");
        change = myMoney - price; // 6790 = 10000 - 3210
        System.out.println("거스름돈 = " + change + "원");
        
        int m5000 ,m1000, m500, m100, m50, m10; // 각 지폐 및 동전 변수 선언
        
        //5000
        int m5000 = change / 5000// 6790/5000의 몫은 1
        
        //1000
        int m1000 = (change % 5000/ 1000;
        
        //500
        int m500 = (change % 1000/ 500;
        
        //100
        int m100 = (change % 500/ 100;
        
        //50
        int m50 = (change % 100/ 50;
        
        //10
        int m10 = (change % 50/ 10;    
                
        // 5000원 짜리는 모두 1000원짜리 지폐로 대체가 가능하고
        // 500원짜리 동전은 모두 100원짜리 동전으로 대체가 가능하므로 위와 같은 코드를 작성할 수 있다.
        
        // 출력
        System.out.println("5000원: " + m5000 + "장");
        System.out.println("1000원: " + m1000 + "장");
        System.out.println("500원: " + m500 + "개");
        System.out.println("100원: " + m100 + "개");
        System.out.println("50원: " + m50 + "개");
        System.out.println("10원: " + m10 + "개");
    
    }
 
}
 
cs

<  2)에 대한 Solution  >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
package test;
 
import java.util.Scanner;
 
public class MainClass {
 
    public static void main(String[] args) {
        
        Scanner sc = new Scanner(System.in); //Scanner class의 객체를 생성
        
        int price, myMoney, change;
        System.out.print("물건가격 : ");
        price = sc.nextInt();
        System.out.print("지불금액 : ");
        myMoney = sc.nextInt();
        
        // 거스름돈
        change = myMoney - price;
        System.out.println("거스름돈 = " + change + "원");
        
        //5000
        int m5000 = change / 5000// 6790/5000의 몫은 1
        
        //1000
        int m1000 = (change % 5000/ 1000;
        
        //500
        int m500 = (change % 1000/ 500;
        
        //100
        int m100 = (change % 500/ 100;
        
        //50
        int m50 = (change % 100/ 50;
        
        //10
        int m10 = (change % 50/ 10;    
                
        // 5000원 짜리는 모두 1000원짜리 지폐로 대체가 가능하고
        // 500원짜리 동전은 모두 100원짜리 동전으로 대체가 가능하므로 위와 같은 코드를 작성할 수 있다.
        
        // 출력
        System.out.println("5000원: " + m5000 + "장");
        System.out.println("1000원: " + m1000 + "장");
        System.out.println("500원: " + m500 + "개");
        System.out.println("100원: " + m100 + "개");
        System.out.println("50원: " + m50 + "개");
        System.out.println("10원: " + m10 + "개");
    
    }
 
}
 
cs

 

< Console >

임의로 물건가격과 지불금액을 입력한 결과

Q. 두 개의 정수 값을 입력 받고, x, y 변수에 저장한 후에 x, y 값을 바꾸고 출력되도록 프로그램을 작성하라.

 

< Solution >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
package test;
 
import java.util.Scanner//Scanner class 사용하기 위해 추가
 
public class MainClass {
 
    public static void main(String[] args) {
        
        Scanner sc = new Scanner(System.in); //Scanner class의 객체를 생성
        
        int x, y; // x,y 변수 선언
        
        // 입력
        System.out.print("x = ");
        x = sc.nextInt();
        System.out.print("y = ");
        y = sc.nextInt();
        
        // Swap!! 값의 교환을 위해서 어떻게?
        // 변수의 임시 저장소 temp를 사용한다.
        
        int temp; // temp 변수 선언
        
        // 값의 교환
        temp = x; // x값이 temp로 
        x = y; // y값이 x로
        y = temp; // x값이 temp를 거쳐 y로  
        
        // 출력
        System.out.println("x = " + x + " y = " + y);
    
    }
 
}
 
cs

< Console >

입출력 결과 값이 교환된 모습

Q. Scanner, print를 이용하여 이름, 나이, 전화번호, 주소 등의 문자열을 입력받아서 출력하는 프로그램을 작성하라.

 

 

< Solution >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
package test;
 
import java.util.Scanner//Scanner class 사용하기 위해 추가
 
public class MainClass {
 
    public static void main(String[] args) {
        
        Scanner sc = new Scanner(System.in); //Scanner class의 객체를 생성
        
        // 변수 선언
        String name;
        int age;
        boolean man;
        String phone;
        double height;
        String address;
        
        // 입력
        System.out.print("name >>");
        name = sc.next();
        
        System.out.print("age >>");
        age = sc.nextInt();
        
        System.out.print("man >>");
        man = sc.nextBoolean();
        
        System.out.print("phone >>");
        phone = sc.next();
        
        System.out.print("height >>");
        height = sc.nextDouble();
        
        System.out.print("address >>");
        address = sc.next();
        
        // 출력
        System.out.println("name: " + name);
        System.out.println("age: " + age);
        System.out.println("man: " + man);
        System.out.println("phone: " + phone);
        System.out.println("height: " + height);
        System.out.println("address: " + address);
    }
 
}
 
cs

< Console >

임의로 입력 후 출력 결과

Q. 다음과 같이 출력되는 프로그램을 작성하라.

출력 결과

< Solution >

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
package test;
 
public class MainClass {
 
    public static void main(String[] args) {
        
        // 변수 선언
        String name1,name2,name3;
        name1 = "\"홍길동\""//escape sequence로 큰따옴표 표현
        name2 = "\"일지매\"";
        name3 = "\"장옥정\"";
        
        int age1,age2,age3;
        age1 = 20;
        age2 = 18;
        age3 = 14;
        
        boolean man1,man2,man3;
        man1 = true;
        man2 = true;
        man3 = true;
        
        String phone1,phone2,phone3;
        phone1 = "010-111-2222";
        phone2 = "02-123-4567";
        phone3 = "02-345-7890";
        
        double h1,h2,h3; //height 변수 선언
        h1 = 175.12;
        h2 = 180.01;
        h3 = 155.78;
        
        String ad1,ad2,ad3; //address 변수 선언
        ad1 = "\"경기도\"";
        ad2 = "\"서울\"";
        ad3 = "\"부산\"";
        
        // 출력
        System.out.println("=========================================================");
        System.out.println("\\ name\t age\tman\tphone\t\theight\taddress \\");
        System.out.println("=========================================================");
        System.out.println("\\ "+name1+" "+age1+"\t"+man1+"\t"+phone1+"\t"+h1+"\t"+ad1+" \\");
        System.out.println("\\ "+name2+" "+age2+"\t"+man2+"\t"+phone2+"\t"+h2+"\t"+ad2+"   \\");
        System.out.println("\\ "+name3+" "+age3+"\t"+man3+"\t"+phone3+"\t"+h3+"\t"+ad3+"   \\");
        System.out.println("=========================================================");
        
        // 사이 간격은 space와 escape sequence "\t" 이용하여 조절
    }
 
}
 
cs

+ Recent posts