일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- vscode
- 이분그래프
- 입/출력
- EOF
- 프레임워크와 라이브러리의 차이
- c++
- scanf
- Django Nodejs 차이점
- string 메소드
- Django란
- k-eta
- double ended queue
- getline
- 알고리즘 공부방법
- 구조체와 클래스의 공통점 및 차이점
- 장고란
- 연결요소
- 백준
- 입출력 패턴
- correlation coefficient
- iOS14
- 2557
- 시간복잡도
- 표준 입출력
- UI한글변경
- Django의 편의성
- 엑셀
- string 함수
- 매크로
- 자료구조
- Today
- Total
목록알고리즘 (188)
Storage Gonie
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/cE00Og/btquJucZt41/cZzHamYLm1Rt55DBNSv931/img.png)
문제 풀이 # C++ #include using namespace std; int main() { ios_base::sync_with_stdio(false); int m = 0, d = 0; int nums[12] = {31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31}; string str[7] = {"SUN", "MON", "TUE", "WED", "THU", "FRI", "SAT"}; int sum = 0; while (cin >> m >> d) { // 해당 날짜가 356일 중 몇번째 일짜인지 구해낸다. sum += d; for (int i = 0; i < m-1; i++) sum += nums[i]; // 무슨 요일인지 알아낸다. cout
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/btzazh/btquGFAgQWo/VJ1hzsAKl5rVFt8ocAmGXK/img.png)
문제 풀이 # C++ #include using namespace std; int main() { int N; scanf("%d", &N); for (int i = 0; i < 9; i++) { printf("%d * %d = %d\n", N, i+1, N*(i+1)); } }
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bgrD6v/btquGXHrMUO/qFX2TjaEOmdDRlekmX46T1/img.png)
문제 풀이 # C++ #include using namespace std; int main() { int N; scanf("%d", &N); for (int i = 0; i < N; i++) { printf("%d\n", N-i); } }
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/ROpLf/btquI1ozOYo/6okfKAZkZgpp1V4zHKU4dK/img.png)
문제 풀이 # C++ #include using namespace std; int main() { int N; scanf("%d", &N); for (int i = 0; i < N; i++) { printf("%d\n", i+1); } }
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/bbvYRd/btquEQvH5aV/eH3WS2EZDICDgDt4MQzqy1/img.png)
문제 풀이 # C++ #include char a[100]; int main() { while (scanf("%10s",a)==1) { // 10개씩 끊어서 읽어들임 printf("%s\n",a); } } #include using namespace std; int main() { string str; cin >> str; int i = 0; while(1) { cout
1. 예상과 다르게 줄바꿈 문자를 이전 입력으로부터 바로 받아서 그냥 넘어가버리는 경우 - getchar()를 껴 넣어줌으로써 해결가능. 2. scanf("%[^]\n", s); 이 방식을 웬만하면 사용하지 말자. 직관적이지 않은 flow가 보여진다. 3. {scanf, printf} {cin, cout} 을 섞어서 쓰지말고 하나만 써야한다. 안그러면 결과가 맞아도 틀리다고 나올 수 있다. 4. 배열의 크기를 선언할 때 문제에서 입력의 조건을 잘 확인하고 충분히 크게 줘야한다.
입력받기 # char 배열에 문자열 입력받기 char s[10]; cin >> s; 속성값 얻기 # char 배열의 문자열 길이 - strlen() char s[10] = "abc"; cout > s; a = atoi(s); // 입력받은 문자열을 정수형으로 변환 cout
참고 : http://yotop93.blogspot.com/2015/04/string.html C++에서 문자열을 다룰 수 있는 두 가지 방법 # C-스트링 - C언어에서 사용해오던 전통적인 문자열로, '\0'으로 끝나는 char타입의 배열을 취급하는 방법이다. char s[100]; scanf("%s", s); # string 클래스 - C++ 표준 라이브러리에서 제공하는 클래스로 문자열의 크기를 동적으로 변경 가능하며, Python의 문자열 방식과 비슷하다. string str = ""; getline(cin, str); // 문자열 입력받기 cout
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/rJctg/btquDBSyFCK/NeRr0QJsToBPCyLmRhY8e0/img.png)
문제 풀이 # C++ - 버퍼(string, char)를 사용하지 않고 해결한 버전 #include int main() { int n; scanf("%d",&n); int sum=0; for (int i=0; i 정수 변환 result += num; } printf("%d\n", result); }
![](http://i1.daumcdn.net/thumb/C150x150/?fname=https://blog.kakaocdn.net/dn/dygZhV/btquDrvUhq9/j9lwJJksFKTG3QhIeaaI11/img.png)
문제 풀이 # C++ - while문 조건 사이에 getline을 넣어주는 방식으로도 통과는 할 수 있었지만 진정 파일의 끝에서 끝나진 않았다. 따라서 아래와 비슷한 방식으로 해줘야 한다. 파일의 끝인지 비교할 땐 '==' 연산자를 사용할 수 있는 string 및 getline이 편리하다. - scanf는 앞의 공백을 제거하고 입력받아서 사용할 수 없었다. #include using namespace std; int main(){ string str; while(1) { getline(cin, str); if (str == "") break; else cout