본문 바로가기

분류 전체보기

(370)
[BOJ] 20291번 파일 정리 (C++) https://www.acmicpc.net/problem/20291 20291번: 파일 정리 친구로부터 노트북을 중고로 산 스브러스는 노트북을 켜자마자 경악할 수밖에 없었다. 바탕화면에 온갖 파일들이 정리도 안 된 채 가득했기 때문이다. 그리고 화면의 구석에서 친구의 메시지를 www.acmicpc.net #include #include #include using namespace std; int main() { int n; cin >> n; string str; map m; for(int i = 0; i > str; int idx = str.find('.'); str = str.substr(idx + 1); if(m.find(str) != m.end()){ m[str]++; ..
[Flutter] 기상청 오픈API 위경도→ x, y 좌표 dart 변환 코드 기상청 오픈API는 위치를 찾을 때 위도 경도가 아닌 기상청만의 특정 좌표를 사용한다. C언어 예제만 제공해주기 때문에, 각자 원하는 언어로 짜야한다. 다음은 널 세이프티를 적용한 dart 변환 코드이다. import 'dart:math'; class Weather_map_xy { int x; int y; Weather_map_xy(this.x, this.y); } class lamc_parameter { double? Re; /* 사용할 지구반경 [ km ] */ double? grid; /* 격자간격 [ km ] */ double? slat1; /* 표준위도 [degree] */ double? slat2; /* 표준위도 [degree] */ double? olon; /* 기준점의 경도 [degree]..
[BOJ] 18870번 좌표 압축 (C++) https://www.acmicpc.net/problem/18870 18870번: 좌표 압축 수직선 위에 N개의 좌표 X1, X2, ..., XN이 있다. 이 좌표에 좌표 압축을 적용하려고 한다. Xi를 좌표 압축한 결과 X'i의 값은 Xi > Xj를 만족하는 서로 다른 좌표의 개수와 같아야 한다. X1, X2, ..., XN에 좌 www.acmicpc.net #include #include #include using namespace std; int main() { ios::sync_with_stdio(false); cin.tie(NULL); int n; cin >> n; vector v(n); for (int i = 0; i > v[i]; } vector tmp(v); ..
[Flutter] Error: This expression has type 'void' and can't be used. 반환 타입을 Future가 아닌 Future로 바꾼다. import 'package:http/http.dart' as http; import 'dart:convert'; class Network { final String url; Network(this.url); Future getJsonData() async { http.Response response = await http.get(Uri.parse(url)); if (response.statusCode == 200) { String jsonData = response.body; var parsingData = jsonDecode(jsonData); return parsingData; } } } 참고: https://github.com/londonap..
[BOJ] 10988번 팰린드롬인지 확인하기 (C++) https://www.acmicpc.net/problem/10988 10988번: 팰린드롬인지 확인하기 첫째 줄에 단어가 주어진다. 단어의 길이는 1보다 크거나 같고, 100보다 작거나 같으며, 알파벳 소문자로만 이루어져 있다. www.acmicpc.net #include #include #include using namespace std; int main() { string s1, s2; cin >> s1; s2 = s1; reverse(s1.begin(), s1.end()); if(s1 == s2) cout
[BOJ] 7576번 토마토 (C++) https://www.acmicpc.net/problem/7576 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net #include #include using namespace std; #define MAX 1001 int N, M; int arr[MAX][MAX]; int dx[4] = { 1, -1, 0, 0 }; int dy[4] = { 0, 0, 1, -1 }; queue q; void bfs() { while (!q.empty()) { int x = q.front().first; int..
[BOJ] 2644번 촌수계산 (C++) https://www.acmicpc.net/problem/2644 2644번: 촌수계산 사람들은 1, 2, 3, …, n (1 ≤ n ≤ 100)의 연속된 번호로 각각 표시된다. 입력 파일의 첫째 줄에는 전체 사람의 수 n이 주어지고, 둘째 줄에는 촌수를 계산해야 하는 서로 다른 두 사람의 번호가 주어 www.acmicpc.net #include #include using namespace std; int n, m; int map[101][101]; int visit[101]; int depth[101]; void bfs(int start){ visit[start] = 1; queue q; q.push(start); while(!q.empty()){ int node = q.front(); q.pop();..
[Flutter] 멀티 페이지 이동 - 네비게이터(Navigator)와 pushNamed method MaterialApp 위젯의 routes, initialRoute argument는 멀티 페이지 이동 기능을 구현할 때 꼭 필요한 요소들이다. initialRoute argument는 멀티 페이지 이동을 할 때 화면에 가장 먼저 출력되는 route를 불러오는 역할 즉, home argument와 같은 역할을 한다. 그래서 멀티 페이지 이동 기능을 구현할 때 home 대신 initialRoute argument를 사용한다. home argument와 initialRoute argument가 동시에 존재하면 에러가 발생하니 주의!! routes argument는 이동할 페이지들의 이름을 지정하고, 생성하는 역할을 한다. 가 한 쌍으로 전달되는 Map이라는 자료형을 가져야 한다. Map 자료구조는 Key:Va..